首页 > 解决方案 > 在python中关闭程序时如何杀死非守护线程?

问题描述

杀死非守护线程的正确方法是什么?我有程序连接(asyncio)到 API 并不断从服务器接收数据,这个连接必须在“正常”线程中运行,因为如果我将它设置为守护进程它不再工作。现在的问题是,如果我关闭程序,这个连接仍然打开。我可以在单击退出按钮时实现一个信号来停止线程,但是如果程序在任务管理器中关闭怎么办?

我想我的问题是,如果没有通过单击按钮关闭程序,程序是否会留下(在编译为 exe 后)正在运行的线程?或者如果我单击退出按钮,尽管我仍然看到在 Visual Studio Code 控制台中运行的线程,它将被关闭?

标签: pythonmultithreadingpython-asyncio

解决方案


推荐阅读