Я учусь нитью один из моих скриптов, и у меня есть вопрос. У меня есть три класса, которые делают свое дело:
class odd(object):
def count():
num = 1
while True:
num += 2
class even(object):
def count():
num = 0
while True:
num += 2
class singles(object):
def count():
num = 0
while True:
num +=1
И мой главный запускает три темы:
if __name__ == '__main__':
print('Starting...')
t1 = Thread(name='thread1', target=even.count)
t2 = Thread(name='thread2', target=odd.count)
t3 = Thread(name='thread3', target=singles.count)
t1.start()
t2.start()
t3.start()
while True:
pass
Однако, когда я делаю top -H -p <pid>
для просмотра потоков, порожденных моим процессом python, я вижу всего 4 потока, 1 работает и 3 спит. Я ожидал увидеть 3 всего потока и 3 работающих. Может кто-нибудь объяснить мне, что происходит? Откуда идет четвертая нить? Почему не все мои темы запущены?