Python: Что если мы вызовем thread.start() и оставим его без соединения или закрытия?
Когда я создаю новый поток из потоков. Вот так:
def hello():
print ('hello')
t = threading.Thread(target=hello)
t1.start()
Если бы я создавал все больше и больше таких потоков, у меня не хватило бы памяти или потоков для использования? Можно ли так оставить после вызова метода start?
1 ответ
Да, если вы создаете много длительных потоков, теоретически возможно достичь максимальной функциональной ОС для процесса python (около 2-3 тыс. Потоков на 32-битных машинах или около 30 тыс. Для 64-битных машин).
Тем не менее, это не имеет значения, если вы join()
темы или нет. Потоки автоматически завершатся, когда target
функция возвращает.