work_thread_example.py
· 1.0 KiB · Python
Surowy
"""
這段程式碼是建立一個執行緒來處理工作項目,並將 30 個工作項目放入工作佇列中。然後會等待所有工作都完成後才會印出 "All work completed" 的訊息。
"""
import threading
import queue
# 定義一個函式來處理工作項目
def process_work_item(work_queue):
# 在這裡添加你的工作處理代碼
while not work_queue.empty():
# 從工作佇列中取出一個工作項目
work_item = work_queue.get()
# 在這裡添加你的工作處理代碼
pass
print(work_item)
# 通知工作佇列,已經處理完一個工作項目
work_queue.task_done()
# 建立工作佇列
work_queue = queue.Queue()
# 將 30 個工作項目放入工作佇列中
for i in range(30):
work_queue.put(i)
# 建立執行緒
worker = threading.Thread(target=process_work_item, args=(work_queue,))
# 啟動執行緒
worker.start()
# 等待執行緒結束
worker.join()
# 印出完成訊息
print("All work completed")
| 1 | """ |
| 2 | 這段程式碼是建立一個執行緒來處理工作項目,並將 30 個工作項目放入工作佇列中。然後會等待所有工作都完成後才會印出 "All work completed" 的訊息。 |
| 3 | """ |
| 4 | |
| 5 | import threading |
| 6 | import queue |
| 7 | |
| 8 | |
| 9 | # 定義一個函式來處理工作項目 |
| 10 | def process_work_item(work_queue): |
| 11 | # 在這裡添加你的工作處理代碼 |
| 12 | while not work_queue.empty(): |
| 13 | # 從工作佇列中取出一個工作項目 |
| 14 | work_item = work_queue.get() |
| 15 | |
| 16 | # 在這裡添加你的工作處理代碼 |
| 17 | pass |
| 18 | print(work_item) |
| 19 | |
| 20 | # 通知工作佇列,已經處理完一個工作項目 |
| 21 | work_queue.task_done() |
| 22 | |
| 23 | |
| 24 | |
| 25 | # 建立工作佇列 |
| 26 | work_queue = queue.Queue() |
| 27 | |
| 28 | # 將 30 個工作項目放入工作佇列中 |
| 29 | for i in range(30): |
| 30 | work_queue.put(i) |
| 31 | |
| 32 | # 建立執行緒 |
| 33 | worker = threading.Thread(target=process_work_item, args=(work_queue,)) |
| 34 | |
| 35 | # 啟動執行緒 |
| 36 | worker.start() |
| 37 | |
| 38 | # 等待執行緒結束 |
| 39 | worker.join() |
| 40 | |
| 41 | # 印出完成訊息 |
| 42 | print("All work completed") |
| 43 | |
| 44 |