@gagarinten

Как в discord.py сделать функцию shutdown?

Мне нужно что бы когда я отключаю сервер выполнялась функция n. Как такое сделать?
  • Вопрос задан
  • 39 просмотров
Пригласить эксперта
Ответы на вопрос 3
Timtaran
@Timtaran
Начинающий программист.
Никак, так как при выключении сервер выключает все программы.
Ответ написан
Если допустить, что ваш сервер линуксовый, и он при завершении работы вызывает необходимые сигналы - ловить эти самые сигналы.
https://docs.python.org/3/library/asyncio-eventloo... (достать eventloop бота можно через bot.loop)

https://docs.python.org/3/library/signal.html#sign...
https://docs.python.org/3/library/signal.html#sign...
https://docs.python.org/3/library/signal.html#sign...
Ответ написан
@Vindicar
Если речь об остановке программы, то гипотетически может пригодиться модуль atexit.
Но нужно иметь ввиду, что этот модуль не поможет если процесс убит сигналом KILL (Unix системы) или через TerminateProcess() (Windows системы).
Кроме того, нет гарантий, что после вызова atexit-обработчика бот проживёт достаточно долго, чтобы на самом деле отправить сообщение по сети, а не только "принять к сведению и поставить в очередь".

Так что скорее стоит задуматься, что именно вы пытаетесь сделать, и зачем.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы