回答編集履歴
1
コード修正
answer
CHANGED
@@ -5,7 +5,7 @@
|
|
5
5
|
|
6
6
|
との記載のケースに該当しているようです。
|
7
7
|
すなわちキューに要素が残っているのに`.join`しているためデッドロックが発生しています。
|
8
|
-
よって以下のように
|
8
|
+
よってたとえば以下のようにプロセス終了待ちのあとに`.get`にて要素を取り出せばよいです。
|
9
9
|
参考:[python multiprocessing .join() deadlock depends on worker function](https://stackoverflow.com/questions/45948463/python-multiprocessing-join-deadlock-depends-on-worker-function)
|
10
10
|
|
11
11
|
```Python
|
@@ -15,7 +15,9 @@
|
|
15
15
|
|
16
16
|
p1 = Process(target = something, args = (test, 100000))
|
17
17
|
p1.start()
|
18
|
+
while p1.is_alive():
|
19
|
+
pass
|
18
20
|
print(test.get())
|
19
|
-
p1.join()
|
21
|
+
#p1.join()
|
20
22
|
#print(test.get())
|
21
23
|
```
|