import threading
import queue
def do_work(num):
num += 10
print(num)
def worker():
while True:
item = q.get()
if item is None:
break
do_work(item)
q.task_done()
q = queue.Queue()
num_worker_threads = 10
threads = []
for i in range(num_worker_threads):
t = threading.Thread(target=worker)
t.start()
threads.append(t)
for item in range(100):
q.put(item)
# block until all tasks are done
q.join()
# stop workers
for i in range(num_worker_threads):
q.put(None)
for t in threads:
t.join()
多线程配合队列使用范例
最新推荐文章于 2021-05-10 16:51:11 发布