0
asyncioを使用してイベント消費者スレッドからbusy_waitを回避するにはどうすればよいですか? 私は他のスレッドによって処理されるイベントを生成するメインスレッドを持っています。それはイベントキューは、その中のいくつかのアイテムを持っているかどうかを確認しようとしているとして、私のイベントスレッドはpythonがイベント処理スレッドでビジー待機を避ける
from Queue import Queue
from threading import Thread
import threading
def do_work(p):
print("print p - %s %s" % (p, threading.current_thread()))
def worker():
print("starting %s" % threading.current_thread())
while True: # <------------ busy wait
item = q.get()
do_work(item)
time.sleep(1)
q.task_done()
q = Queue()
t = Thread(target=worker)
t.daemon = True
t.start()
for item in range(20):
q.put(item)
q.join() # block until all tasks are done
どのように私はasyncio使用して上記のコードに似た何かを達成することができます... busy_waitましたか?