快速业务通道

memwatch的使用(二)

作者 佚名技术 来源 Linux系统 浏览 发布时间 2012-05-16
2.3分析日志文件 日志文件memwatch.log中包含的信息主要有以下几点: * 测试日期 * 状态搜集器的信息 拥有帝国一切,皆有可能。欢迎访问phome.net * 使用MemWatch的输出函数或宏(如TRACE等)的信息. * MemWatch捕获的错误信息 * 内存使用的全局信息统计,包括四点:
1)分配了多少次内存
2
)最大内存使用量
3)分配的内存总量
4
)为释放的内存总数
拥有帝国一切,皆有可能。欢迎访问phome.netMemWatch捕获的错误记录在日志文件中的输出格式如下: message: <sequence-number> filename(linenumber), information
2.4 注意事项 mwInit()mwTerm()是对应的.使用了多少次mwInit(),就需要调用多少次 mwTerm()用于终止MemWatch. 拥有帝国一切,皆有可能。欢迎访问phome.net如果在流程中捕获了程序的异常中断,那么需要调用mwAbort()而不是 mwTerm().即使有显示的调用mwTerm(),mwAbort()也将终止MemWatch. MemWatch不能确保是线程安全的.如果你碰巧使用Wind32或者你使用了线程,作为2.66,是初步支持线程的.定义WIN32或者MW_PTHREADS以明确支持线程.这会导致一个全局互斥变量产生,同时当访问全局内存链时, 拥有帝国一切,皆有可能。欢迎访问phome.netMemWatch会锁定互斥变量,但这远不能证明是线程安全的.

3 结论 MemWatch的使用可以得知,无法用于内核模块.MemWatch自身就使用了应用层的接口,而不是内核接口.但是,对于普通的应用层程序,我认为还是比较有用,并且是开源的,可以自己修改代码实现;它能方便地查找内存泄漏,特别是提供的接口函数简单易懂,学习掌握很容易,对应用层程序的单元测试会较适用.

拥有帝国一切,皆有可能。欢迎访问phome.net

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号