python queue task_done code example
Example 1: queue python
from queue import Queue
q = Queue()
q.size() # returns the current lenght of queue
q.empty() # returns True if empty, False otherwise
q.put(item)
q.get()
Example 2: python threading queue
import threading, queue
q = queue.Queue()
def worker():
while True:
item = q.get()
print(f'Working on {item}')
print(f'Finished {item}')
q.task_done()
# turn-on the worker thread
threading.Thread(target=worker, daemon=True).start()
# send thirty task requests to the worker
for item in range(30):
q.put(item)
print('All task requests sent\n', end='')
# block until all tasks are done
q.join()
print('All work completed')