【发布时间】:2011-08-19 13:10:31
【问题描述】:
我正在尝试使用多处理编写一个 Python 2.6 (OSX) 程序,并且我想用超过默认的 32767 个项目来填充队列。
from multiprocessing import Queue
Queue(2**15) # raises OSError
Queue(32767) 可以正常工作,但任何更大的数字(例如Queue(32768))都会失败,OSError: [Errno 22] Invalid argument
这个问题有解决办法吗?
【问题讨论】:
-
队列包含什么样的数据?您确定任何更高的数字都会失败,还是第 32768 个数据节点会导致错误? (您是否偶然使用了路径名?)
-
@voithos,我没有在队列爆炸之前填充队列。仅设置最大大小会导致 OSError。
标签: python queue multiprocessing max-size