labrobot/gui/depot/queue_thread.py
2021-12-04 09:49:33 +01:00

34 lines
476 B
Python

import queue
import threading
num_workers = 4
q = queue.Queue()
def do_work(item):
print(item)
def worker():
while True:
item = q.get()
if item is None:
break
do_work(item)
q.task_done()
threads = []
for i in range(num_workers):
t = threading.Thread(target=worker)
t.start()
threads.append(t)
for i in range(100):
q.put(i)
for i in range(num_workers):
q.put(None)
for t in threads:
t.join()