python2.7では、関数内から初期化されたときにmultiprocessing.Queueが壊れたエラーをスローします。私は問題を再現する最小の例を提供しています。マルチプロセッシングでパイプエラーが発生しました.Queue
#!/usr/bin/python
# -*- coding: utf-8 -*-
import multiprocessing
def main():
q = multiprocessing.Queue()
for i in range(10):
q.put(i)
if __name__ == "__main__":
main()
私はなぜ解読することができません下の壊れたパイプのエラー
Traceback (most recent call last):
File "/usr/lib64/python2.7/multiprocessing/queues.py", line 268, in _feed
send(obj)
IOError: [Errno 32] Broken pipe
Process finished with exit code 0
をスローします。確かに、関数内からQueueオブジェクトを取り込むことができないのは間違いです。
ワンダフル答えです。私はpython3ではこれが起こらないことを述べる別のものを与えるつもりです。 – hAcKnRoCk