summaryrefslogtreecommitdiff
path: root/python3/moprocessmoproblems.py
diff options
context:
space:
mode:
Diffstat (limited to 'python3/moprocessmoproblems.py')
-rw-r--r--python3/moprocessmoproblems.py59
1 files changed, 0 insertions, 59 deletions
diff --git a/python3/moprocessmoproblems.py b/python3/moprocessmoproblems.py
deleted file mode 100644
index 18bfc39..0000000
--- a/python3/moprocessmoproblems.py
+++ /dev/null
@@ -1,59 +0,0 @@
-import multiprocessing
-import queue
-
-def _process_worker(q):
- while True:
- try:
- something = q.get(block=True, timeout=0.1)
- except queue.Empty:
- return
- else:
- print('Grabbed item from queue:', something)
-
-
-def _make_some_processes(q):
- processes = []
- for _ in range(10):
- p = multiprocessing.Process(target=_process_worker, args=(q,))
- p.start()
- processes.append(p)
- return processes
-
-def _do(i):
- print('Run:', i)
- q = multiprocessing.Queue()
- print('Created queue')
- for j in range(30):
- q.put(i*30+j)
- processes = _make_some_processes(q)
- print('Created processes')
-
- while not q.empty():
- pass
- print('Q is empty')
-
- # Without the two following commented lines, the output on Mac OS 10.5 (the
- # output is as expected on Linux) will be:
- # Run: 0
- # Created queue
- # Grabbed item from queue: 0
- # ...
- # Grabbed item from queue: 29
- # Created processes
- # Q is empty
- # Run: 1
- # Created queue
- # Grabbed item from queue: 30
- # ...
- # Grabbed item from queue: 59
- # Created processes
- # Q is empty
- # Run: 2
- # Created queue
- # Created processes
- # <no further output>
-# for p in processes:
-# p.join()
-
-for i in range(100):
- _do(i) \ No newline at end of file