升级到 manic minotaur 23.10 后,python 线程守护进程不起作用

升级到 manic minotaur 23.10 后,python 线程守护进程不起作用

我将 Ubuntu 从 23.04 升级到了 23.10

版本 23.10 (Mantic Minotaur) 64 位

内核 Linux 6.5.0-17-通用 x86_64

Python3 版本 3.11.6

自升级以来,任何使用 deamon = True 的线程的 Python 程序在 Python 脚本完成后都不会再终止线程。

以下是一个简单的脚本来证明这一点:

import threading as th

def thread_method():
    input()
thread_test = th.Thread(target=thread_method, args=(), name='daemon_exit_test', daemon=True)
thread_test.start()
print(thread_test.isDaemon())

print('print this then exit')

这将创建一个守护线程,并使其等待输入(),即回车键。

过去,由于标志 deamon=True,一旦到达脚本末尾,它就会终止线程。现在它不会这样表现,而是保持线程打开,可以通过按 Enter 键接受输入 () 来手动结束线程。

我在 python 3.9 和 python 3.12 环境中尝试过,同样的问题。

Ubuntu 23.10 中是否有一个设置可以使其正常工作?也许是内核切换或升级?

相关内容