Python 3.4+threadingфункция
threading.main_thread()
сведения о потоках
Объект Thread главного потока — того, в котором запущен интерпретатор; позволяет из любого места понять, главный ли текущий поток.
Синтаксис
threading.main_thread()
Проверяйте current_thread() is main_thread(), а не имя 'MainThread': имя потока можно сменить. Это важно, потому что signal.signal() разрешён только в главном потоке (иначе ValueError), а многие GUI-библиотеки требуют работать с окнами только из него. После os.fork() в дочернем процессе главным становится поток, вызвавший fork.
Примеры
import threading
main = threading.main_thread()
print(main.name, threading.current_thread() is main) # → MainThread True
res = []
def check():
res.append(threading.current_thread() is threading.main_thread())
t = threading.Thread(target=check)
t.start()
t.join()
print(res) # → [False]
См. также
Открыть в полном глоссарииdocs.python.orgСообщить о неточности