社区
C++ 语言
帖子详情
如何使用valgrind定位服务器程序的内存泄露?
nkinuyasha
2014-02-15 07:20:29
有一个C++程序是常驻进程
如果通过valgrind讲程序拉起来以后,怎么退出这个进程来触发内存泄露检测啊
我通过kill -15不行
...全文
327
3
打赏
收藏
如何使用valgrind定位服务器程序的内存泄露?
有一个C++程序是常驻进程 如果通过valgrind讲程序拉起来以后,怎么退出这个进程来触发内存泄露检测啊 我通过kill -15不行
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
3 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
后坡
2014-03-28
打赏
举报
回复
可以在你的程序中注册信号处理函数 比如注册SIGTERM信号处理函数 //信号处理函数 void dosignal(int sig) { is_runing = false; } int main() { while(is_runing) { do XX } return } 可以执行kill -s SIGTERM pid 让进程主动退出。 当然也可以在信号处理函数中直接exit退出,看你情况 (我用的是linux,windows应该也有类似的机制)
jiandingzhe
2014-02-17
打赏
举报
回复
咩?没debug过这类程序。会有任何不同吗? 另外我都是运行的时候就带着valgrind跑啊。
赵4老师
2014-02-17
打赏
举报
回复
检查是否资源泄漏的办法之一: 在任务管理器 进程 查看 选择列 里面选择:内存使用、虚拟内存大小、句柄数、线程数、USER对象、GDI对象 让你的程序(进程)不退出,循环执行主流程很多遍,越多越好,比如1000000次甚至无限循环,记录以上各数值,再隔至少一小时,越长越好,比如一个月,再记录以上各数值。如果以上两组数值的差较大或随时间流逝不断增加,则铁定有对应资源的资源泄漏!
C++程序检测内存泄漏的方法分享
在Linux平台上有
valgrind
可以非常方便的帮助我们
定位
内存泄漏,因为Linux在开发领域的
使用
场景大多是跑服务器,再加上它的开源属性,相对而言,处理问题容易形成“统一”的标准。而在Windows平台,服务器和客户端...
C++程序内存泄漏检测方法
在Linux平台上有
valgrind
可以非常方便的帮助我们
定位
内存泄漏,因为Linux在开发领域的
使用
场景大多是跑服务器,再加上它的开源属性,相对而言,处理问题容易形成“统一”的标准。而在Windows平台,服务器和客户端...
C++第3课:C++
内存泄露
检测原理及案例实战
本课程具体的内容主要包括C++
内存泄露
案例、VS2015
内存泄露
检测、野指针...
Valgrind
内存泄露
检测、Windows的VLD
内存泄露
检测、C++
内存泄露
检测方式之对象计数、C++
内存泄露
检测方式之重载new和delete、C++
内存泄露
检测...
valgrind
——内存泄漏检测介绍
valgrind
内存泄漏检测介绍
内存泄漏的原因,内存泄漏如何避免?内存泄漏如何
定位
?
这对优化程序有很大的...
Valgrind
会给出程序中malloc和free的出现次数以判断是否发生内存泄漏,比如对上面的程序运行memcheck,
Valgrind
的记录显示上面的程序用了1次malloc,却调用了0次free,明显发生了内存泄漏!
C++ 语言
64,666
社区成员
250,488
社区内容
发帖
与我相关
我的任务
C++ 语言
C++ 语言相关问题讨论,技术干货分享,前沿动态等
复制链接
扫一扫
分享
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
请不要发布与C++技术无关的贴子
请不要发布与技术无关的招聘、广告的帖子
请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下
试试用AI创作助手写篇文章吧
+ 用AI写文章