Python Glossary English

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Сообщить о неточности