ループ内に新しいスレッドを作成し、それらが終了するのを待たないプログラムを作成しようとしています。スレッドで .start() を使用すると理解できるように、メインループは続行する必要があり、他のスレッドはオフになり、同時に作業を行います
ただし、新しいスレッドが開始されると、スレッドが完了するまでループがブロックされます。Pythonでスレッドがどのように機能するかを誤解したことがありますか、それとも何か愚かなことをしているのでしょうか。
ここに新しいスレッドを作成するための私のコードがあります。
def MainLoop():
print 'started'
while 1:
if not workQ.empty():
newThread = threading.Thread(target=DoWorkItem(), args=())
newThread.daemon = True
newThread.start()
else:
print 'queue empty'
皆さんありがとう