Monkey patch original current_thread _active
Monkey patch the original current_thread to use the up-to-date _active global variable. This solution is based on that documented at: https://github.com/eventlet/eventlet/issues/592 Change-Id: Icb26c43a71accdb4658ad6087fb3226f9a1090c0 Story: 2007614
This commit is contained in:
parent
4b489435e1
commit
4706b6c295
@ -44,11 +44,20 @@ if HUB_TYPE == 'eventlet':
|
||||
import traceback
|
||||
|
||||
getcurrent = eventlet.getcurrent
|
||||
patch = eventlet.monkey_patch
|
||||
sleep = eventlet.sleep
|
||||
listen = eventlet.listen
|
||||
connect = eventlet.connect
|
||||
|
||||
def patch(thread=True):
|
||||
eventlet.monkey_patch(thread=thread)
|
||||
if thread:
|
||||
# Monkey patch the original current_thread to use the up-to-date _active
|
||||
# global variable. See https://bugs.launchpad.net/bugs/1863021 and
|
||||
# https://github.com/eventlet/eventlet/issues/592
|
||||
import __original_module_threading as orig_threading # noqa
|
||||
import threading # noqa
|
||||
orig_threading.current_thread.__globals__['_active'] = threading._active
|
||||
|
||||
def spawn(*args, **kwargs):
|
||||
raise_error = kwargs.pop('raise_error', False)
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user