我有一个基本的 python 程序,它可以创建大量线程(2000),处理一些东西,然后把它写出来。
我已将我的代码缩小到与此类似(使用 2k 线程): URL fetch thread example on: http ://www.ibm.com/developerworks/aix/library/au-threadingpython/
除了在我的课堂上,我实际上什么都不做(从队列中获取项目,然后调用任务完成)。在这个缩小版和我做事的版本中,内存使用是一样的。在 32 位 python 解释器中,我使用了大约 105 兆的虚拟内存。在 64 位中,我使用了超过 8 个演出。
我正在运行 rhel 6。我还添加了:threading.stack_size(32768) 以减小堆栈大小。我假设 python 正在获取一些默认的内存限制,我只是无法弄清楚这个限制是什么。
有任何想法吗?
谢谢!