Python
[Python] 파이썬에서의 스레드 (Thread)
주씨.
2022. 1. 6. 22:28
728x90
import threading
import time
import queue
def kane():
print('Harry')
time.sleep(2)
print('Kane')
def sane():
print('Leroy')
time.sleep(1)
print('Sane')
thread = []
thread.append(threading.Thread(target=kane, name="kane"))
thread.append(threading.Thread(target=sane, name="sane"))
for th in thread:
th.start()
import threading
import time
import queue
q = queue.Queue()
def worker():
while True:
item = q.get()
print(f'Working on {item}')
time.sleep(2)
print(f'Finished {item}')
q.task_done()
def func():
for item in range(1, 4):
q.put(item)
print(f'put {item} in q')
time.sleep(1)
print('All task requests sent\n', end='')
threading.Thread(target=func, daemon=True).start()
threading.Thread(target=worker, daemon=True).start()
# block until all tasks are done
q.join()
print('All work completed')