我有一个长期运行的Python进程,它产生的数据比我计划的要多.我的结果存储在一个列表中,该列表将在程序完成时被序列化(pickle)并写入磁盘 - 如果它到达那么远.但是按照这个速度,列表更有可能耗尽所有1 GB以上的可用RAM,并且该过程将崩溃,从而在此过程中丢失所有结果.
我计划修改我的脚本以定期将结果写入磁盘,但是如果可能的话,我想保存当前正在运行的进程的结果.有没有什么方法可以从正在运行的进程中获取内存中的数据结构并将其写入磁盘?
我找到了code.interact(),但由于我的代码中没有这个钩子,所以它对我来说似乎没什么用(查看现在运行的Python程序的方法).
我在Fedora 8上运行Python 2.5.有什么想法吗?
非常感谢.
沙欣