質問編集履歴
2
flg_get, flg_put をそれぞれ Process の引数(args)で渡す。不要なグローバス変数の削除。
title
CHANGED
File without changes
|
body
CHANGED
@@ -15,7 +15,7 @@
|
|
15
15
|
from multiprocessing import Queue, Process, Value
|
16
16
|
|
17
17
|
|
18
|
-
def DataPut(q):
|
18
|
+
def DataPut(q, flg_put):
|
19
19
|
global data
|
20
20
|
data = 1
|
21
21
|
while flg_put.value:
|
@@ -26,9 +26,8 @@
|
|
26
26
|
print("stop p1")
|
27
27
|
|
28
28
|
|
29
|
-
def DataGet(q):
|
29
|
+
def DataGet(q, flg_get):
|
30
|
-
global data_list
|
30
|
+
global data_list
|
31
|
-
|
32
31
|
while flg_get.value:
|
33
32
|
|
34
33
|
time.sleep(2)
|
@@ -51,9 +50,9 @@
|
|
51
50
|
|
52
51
|
if __name__ == "__main__":
|
53
52
|
|
54
|
-
p1 = Process( target = DataPut, args=(q,) )
|
53
|
+
p1 = Process( target = DataPut, args=(q, flg_put) )
|
55
54
|
p1.start()
|
56
|
-
p2 = Process( target = DataGet, args=(q,) )
|
55
|
+
p2 = Process( target = DataGet, args=(q, flg_get) )
|
57
56
|
p2.start()
|
58
57
|
|
59
58
|
|
1
コードにミスがあった
title
CHANGED
File without changes
|
body
CHANGED
@@ -29,7 +29,7 @@
|
|
29
29
|
def DataGet(q):
|
30
30
|
global data_list, flg_getflg_get
|
31
31
|
|
32
|
-
while flg_get.value
|
32
|
+
while flg_get.value:
|
33
33
|
|
34
34
|
time.sleep(2)
|
35
35
|
|