g*l
2 楼
这个东西有很多方法,取决于你自己的系统。
我前一阵就做过这个东西,几千个文件,方法就是就是查malloc, re-alloc,和free,
把这这三个函数从新包装,每次调用这三个函数的时间,能够打印出指针,分配或者释
放的内存的大小,还有相应的文件,行数信息,就是在什么地方调用这三个函数的。
运行程序直到memory耗尽死机,然后查log文件,就是如果一个指针由malloc分配出来的
,那么他就应该有相应的FREE去释放相同大小的memory,对于re-alloc也是一样的。
到最后,就会发现某处的指针是没有被释放的。
当然,到系统memory耗光的时间,有些内存是没有释放的,但是这些没有释放的内存你
可以分析他为什么没有被释放,当然memory leak就可以很容易的被找出来。
【在 l*******r 的大作中提到】
: 一个几百个文件的程序有memory leak,如何debug? (前面有人贴出来的面试题,不会
: 做),
: 有人说一下怎么做吗?谢谢
我前一阵就做过这个东西,几千个文件,方法就是就是查malloc, re-alloc,和free,
把这这三个函数从新包装,每次调用这三个函数的时间,能够打印出指针,分配或者释
放的内存的大小,还有相应的文件,行数信息,就是在什么地方调用这三个函数的。
运行程序直到memory耗尽死机,然后查log文件,就是如果一个指针由malloc分配出来的
,那么他就应该有相应的FREE去释放相同大小的memory,对于re-alloc也是一样的。
到最后,就会发现某处的指针是没有被释放的。
当然,到系统memory耗光的时间,有些内存是没有释放的,但是这些没有释放的内存你
可以分析他为什么没有被释放,当然memory leak就可以很容易的被找出来。
【在 l*******r 的大作中提到】
: 一个几百个文件的程序有memory leak,如何debug? (前面有人贴出来的面试题,不会
: 做),
: 有人说一下怎么做吗?谢谢
y*g
3 楼
直接用vargrind之类的工具吧
来的
【在 g***l 的大作中提到】
: 这个东西有很多方法,取决于你自己的系统。
: 我前一阵就做过这个东西,几千个文件,方法就是就是查malloc, re-alloc,和free,
: 把这这三个函数从新包装,每次调用这三个函数的时间,能够打印出指针,分配或者释
: 放的内存的大小,还有相应的文件,行数信息,就是在什么地方调用这三个函数的。
: 运行程序直到memory耗尽死机,然后查log文件,就是如果一个指针由malloc分配出来的
: ,那么他就应该有相应的FREE去释放相同大小的memory,对于re-alloc也是一样的。
: 到最后,就会发现某处的指针是没有被释放的。
: 当然,到系统memory耗光的时间,有些内存是没有释放的,但是这些没有释放的内存你
: 可以分析他为什么没有被释放,当然memory leak就可以很容易的被找出来。
来的
【在 g***l 的大作中提到】
: 这个东西有很多方法,取决于你自己的系统。
: 我前一阵就做过这个东西,几千个文件,方法就是就是查malloc, re-alloc,和free,
: 把这这三个函数从新包装,每次调用这三个函数的时间,能够打印出指针,分配或者释
: 放的内存的大小,还有相应的文件,行数信息,就是在什么地方调用这三个函数的。
: 运行程序直到memory耗尽死机,然后查log文件,就是如果一个指针由malloc分配出来的
: ,那么他就应该有相应的FREE去释放相同大小的memory,对于re-alloc也是一样的。
: 到最后,就会发现某处的指针是没有被释放的。
: 当然,到系统memory耗光的时间,有些内存是没有释放的,但是这些没有释放的内存你
: 可以分析他为什么没有被释放,当然memory leak就可以很容易的被找出来。
s*e
6 楼
http://www.c-sharpcorner.com/UploadFile/shivprasadk/BestPractices509292009045327AM/BestPractices5.aspx
One post I read couple of weeks ago.
One post I read couple of weeks ago.
相关阅读
big number 那道题这道题目有什么想法用hash value来distribute to diff machine的困惑内推和猎头递有啥区别?某家onsite经历和感受,求bless请教,什么样的情况可以有28个月的OPT?一个很nice的同胞面试官求问一下Box的full time SDE的薪水俺老10年前关于语言未来的论述AMD怎么样?大公司一般冷冻期有多久啊?求refer embedded systemPalo Alto Networks怎么样Re: Bye Microsoft, Hello World (转载)猎头问我要我的H1B复印件正常吗?OPT和H1B回国问题Senior digital engineer job opening in Chicago (转载)现在怎么很少听到GS了software developer job openingSAS job opportunity