Aldwin Pollefeyt <aldwinald...@gmail.com> added the comment:
The second import actually doesn't happen. You need to reload it. This can be tested by putting print('loading threading') in threading.py. Your first method-thread will still think it's main thread. So no idea if this is a bug or wrong use. 'import threading' should be one of the first lines in your main code/thread? import _thread import time import importlib barrier = 0 def method(): import threading # Will make threading the wrong thread. global barrier print(threading.main_thread()) print(threading.current_thread()) barrier = 1 _thread.start_new_thread(method, ()) while barrier != 1: time.sleep(.1) import threading importlib.reload(threading) print(threading.main_thread()) print(threading.current_thread()) ---------- nosy: +aldwinaldwin _______________________________________ Python tracker <rep...@bugs.python.org> <https://bugs.python.org/issue37416> _______________________________________ _______________________________________________ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com