Одновременный запуск потоков PythonPython

Программы на Python
Anonymous
Одновременный запуск потоков Python

Сообщение Anonymous »

Я собираюсь запустить код для автоматического сохранения игры каждые X минут, но у него также есть поток, принимающий ввод с клавиатуры. Вот пример кода, который я пытаюсь запустить одновременно, но кажется, что они запускаются один за другим. Как я могу заставить их работать одновременно?
import time
import threading

def countdown(length,delay):
length += 1
while length > 0:
time.sleep(delay)
length -= 1
print(length, end=" ")

countdown_thread = threading.Thread(target=countdown(3,2)).start()
countdown_thread2 = threading.Thread(target=countdown(3,1)).start()

Обновление: не совсем уверен, в чем разница Python между процессом и потоком (будет ли процесс отображаться как второй процесс в Windows?). Но вот мой обновленный код. Он по-прежнему выполняется последовательно, а не одновременно.
import time
from threading import Thread
from multiprocessing import Process

def countdown(length,delay):
length += 1
while length > 0:
time.sleep(delay)
length -= 1
print(length, end=" ")

p1 = Process(target=countdown(5,0.3))
print ("")
p2 = Process(target=countdown(10,0.1))
print ("")
Thread(target=countdown(5,0.3))
print ("")
Thread(target=countdown(10,0.1))

Вернуться в «Python»