#command #discord #bots #line #exit
#команда #Discord #боты #строка #выход
Вопрос:
У меня есть рабочий БОТ Discord, который я хотел бы закрыть и вернуться в командную строку Windows после Control-C. Я пробовал различные предложения, найденные здесь, но ни одно из них не работает для меня. Я нажимаю вызов sys._exit(), но он не завершает работу скрипта, а если и завершает, то все равно не возвращается в командную строку. Вот сжатый код, я ожидаю, что это как-то связано с запуском потока t1?
myEvent = Event()
myEventStatus = STOPPED
client = None
# Mainline starts here
def main(e):
while myEventStatus != QUIT:
e.wait()
e.clear()
# do_something()
#await client.close()
sys._exit()
def handleExit(signal, frame):
#global original_sigint
#signal.signal(signal.SIGINT, original_sigint)
global myEventStatus
myEventStatus = QUIT
myEvent.set()
# Startup Information
@client.event
async def on_ready():
print('Connected to bot: {}'.format(client.user.name))
print('Bot ID: {}'.format(client.user.id))
t1 = threading.Thread(name='blocking', target=main, args=(myEvent,))
t1.start()
original_sigint = signal.getsignal(signal.SIGINT)
signal.signal(signal.SIGINT, handleExit)
# Create bot
client = commands.Bot(command_prefix='!')
client.run(BOT_TOKEN)
Спасибо