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: I876e2825da628d51c9977a4eec0c2ef05aed3229
Closes-Bug: #1863021
This commit is contained in:
Arthur Dayne 2020-05-08 19:41:31 +08:00
parent c5e0dfedf9
commit 9168889dba

View File

@ -17,3 +17,9 @@ import os
if os.environ.get('TEST_EVENTLET'):
import eventlet
eventlet.monkey_patch()
# 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