Я создавал дерзкого чат-бота для Python, в котором есть несколько пользовательских игр, которые я добавляю, чтобы зрителям было что-то использовать, пока они смотрят мой поток.Моя текущая цель - сделать игру в поединок с кубиками (игра на двоих, где тот, кто наберет наибольшее число, выигрывает сумму сделанных ставок).Чтобы играть, я хочу, чтобы оба игрока приняли матч, прежде чем разрешить его продолжить, но я также хочу реализовать таймер матча, чтобы, если другой пользователь не принял матч до истечения таймера, он отменил игру.,Я хочу создать новую ветку для каждой игры и отсканировать, чтобы увидеть, истек ли срок действия игры, но мне нужно, чтобы они запускались параллельно с остальным чат-ботом, иначе у меня может быть только одна игра за раз, иостальная часть бота остановится, когда это произойдет.
Я уже пробовал это использовать многопоточный модуль, включенный в Python, выполнив два процесса и запустив их.Я также попытался использовать модули потоков, и это дает тот же результат.Вот код многопоточности, который я написал, чтобы попытаться заставить его работать.
processes = []
# Tick has a basic print statement, and a sleep statement for testing.
# Tried without the sleep, and used a for loop to print "test" 100 times as well to see if the sleep was causing the issue
tickprocess = multiprocessing.Process(target=tick())
processes.append(tickprocess)
# Main initializes settings and starts the chatbot
chatbotprocess = multiprocessing.Process(target=main())
processes.append(chatbotprocess)
for item in processes:
item.start()
Что он делает, так это запускает тиковый процесс, но ожидает его завершения перед запуском процесса chatbot, который противоположениз того, что я хочу сделать, так как я мог бы просто вызвать функцию галочки, а затем функцию main, чтобы получить тот же результат.Я неправильно понимаю, для чего эти модули?Конечная цель состоит в том, чтобы запустить игровой поток при получении команды игры в кости, но при этом позволить боту работать синхронно и обрабатывать другие команды и игры (все игры к этому моменту запускаются мгновенно или достаточно близко, чтобы моментально не возникали конфликты).