嗨,我是valgrind的新手.我知道如何从命令行运行valgrind可执行文件.但是如何在服务器进程上运行valgrind,如apache/myqld/traffic server等.
我想在流量服务器上运行valgrind(http://incubator.apache.org/projects/trafficserver.html)来检测我写的插件中发生的一些内存泄漏.
有什么建议 ?
谢谢,Pigol
您必须在Valgrind的控制下启动服务器.只需使用服务器的正常启动命令,并在其前面加上valgrind.
Valgrind将附加到您的主要"服务器"进程产生的每个进程.当每个线程或进程结束时,Valgrind将输出其分析,因此我建议将其传递给文件(不确定它是否出现在stderr或stdout上.)
如果您的常用启动命令是/usr/local/mysql/bin/mysqld,请使用启动服务器valgrind /usr/local/mysql/bin/mysqld.
如果您通常使用脚本(如/etc/init.d/mysql start)启动服务,则可能需要在脚本中查找脚本执行的实际命令,并运行该脚本而不是脚本.
不要忘记将--leak-check=full选项传递给valgrind以获取内存泄漏报告.
| 归档时间: |
|
| 查看次数: |
2719 次 |
| 最近记录: |