Я использую Gevent , и я обезьяна исправления все.
Похоже, что исправление обезьяны приводит к последовательной работе потоков.
Мой код:
import threading
from gevent import monkey; monkey.patch_all()
class ExampleThread(threading.Thread):
def run(self):
do_stuff() # takes a few minutes to finish
print 'finished working'
if __name__ == '__main__':
worker = ExampleThread()
worker.start()
print 'this should be printed before the worker finished'
Таким образом, поток не работает должным образом.
Но если я уберу monkey.patch_all()
, он будет работать нормально.
Проблема в том, что мне нужен monkey.patch_all()
для использования gevent (теперь показано в коде выше)
Мое решение:
Я изменил
monkey.patch_all()
до
monkey.patch_all(thread=False)
поэтому я не исправляю нить.