我pandas.DataFrame在多线程代码中使用(实际上是DataFrame被调用的自定义子类Sound)。我注意到我有内存泄漏,因为我的程序的内存使用量逐渐增加超过 1000 万,最终达到我的计算机内存的 ~100% 并崩溃。
我使用objgraph尝试跟踪此泄漏,并发现实例的数量MyDataFrame一直在增加,而它不应该:其run方法中的每个线程都创建一个实例,进行一些计算,将结果保存在一个文件中并退出......所以不应该保留任何引用。
使用objgraph我发现内存中的所有数据帧都有类似的参考图:

我不知道这是否正常……看起来这就是将我的对象保存在内存中的原因。任何想法,建议,见解?