0

我有一个使用 xlc_r 编译的程序,它产生多个线程并试图跟踪它以查看是否有任何内存泄漏。我已经阅读了这篇文章,详细介绍了如何使用 AIX 中内置的 MALLOCDEBUG 功能,但是在运行 format_mallocdebug_op.sh 之后,它显示内存泄漏到处都是随机 pthread 和文件方法,例如 pthread_attri_init、_pth_init、fopen、 fwrite 等
然后我制作了一个较小的测试程序,故意不释放 char * 并用 xlc_r 编译它,并且出现了几乎完全相同的输出。然后我再次编译了测试程序,但使用 xlc 并且它工作正常,显示一个 char * 内存泄漏,就是这样。MALLOCDEBUG 功能似乎不适用于多线程编译的应用程序。是否有设置告诉它注意这一点?

4

0 回答 0