0157睡到0830,最近两天下午,夏天似乎也终于要过去了。
前几天py脚本写的协程打算改线程了,本身最多就起一个线程估计开销高不到哪里去,甚至应该没必要弄什么线程池,主要还是asyncio.to_thread
创建的协程没办法中途停止有点痛苦。
You've run out of free chat messages. You still have free code completions available in the Copilot Free plan. These limits will reset on November 3, 2025.
。受不了了,这个月更是在14号就限制了,明明我基本只用它来写git commit msg。唉,该学英语想想自己怎么写了。
- 对于异步任务:可以使用
task.cancel()
来取消异步任务,但需要处理CancelledError
异常来确保任务优雅地退出。 - 对于线程:没有
cancel()
方法,通常使用一个标志位(如stop_event
)来通知线程退出。
很遗憾,线程也不好终止,为什么会这样。
线程无法直接被强制终止,因为 Python 不允许直接杀死一个线程。这是为了避免资源泄漏和其他潜在问题(如死锁)。Python 设计时希望线程能够在完成任务后自行退出,而不是中途被强制终止。
是哦,我忘了锁。那怎么办呀怎么办呀。下次再想了。