我创建了一个名为babylon的Ruby XMPP框架。然后我用它创建了一些应用程序,尽管它们运行得非常顺畅,但似乎它们正在逐渐消耗我的计算机内存。
我怀疑存在内存泄漏,因此首先在代码的某个位置添加了以下内容:
正如猜测的那样,输出不断增加……虽然缓慢,但肯定会增加。
我和Dike一起尝试使用这里解释的方法来查找泄漏。
不幸的是,Dike无法检测到任何泄漏。即使运行了相当长的时间,它仍然返回相同的对象。
那么,我怎样才能确定我的框架有泄漏,而不仅仅是占用一些内存直到达到某个最大点,然后开始释放呢?
接下来,我应该如何跟踪泄漏并修复它们呢?
感谢您的帮助!
我怀疑存在内存泄漏,因此首先在代码的某个位置添加了以下内容:
puts `ps -o rss= -p #{Process.pid}`.to_i
正如猜测的那样,输出不断增加……虽然缓慢,但肯定会增加。
我和Dike一起尝试使用这里解释的方法来查找泄漏。
不幸的是,Dike无法检测到任何泄漏。即使运行了相当长的时间,它仍然返回相同的对象。
那么,我怎样才能确定我的框架有泄漏,而不仅仅是占用一些内存直到达到某个最大点,然后开始释放呢?
接下来,我应该如何跟踪泄漏并修复它们呢?
感谢您的帮助!