我正在尝试创建/打开并从线程写入文件。
from threading import Thread
CONNECTION_PORT = 9191
def testl():
file = open("testfile.txt","w")
file.write("Hello World")
file.write("This is our new text file")
file.write("and this is another line.")
file.write("Why? Because we can.")
file.close()
def test():
t = Thread(target=testl)
# t.daemon = True
t.start()
test()
问题在于,当我取消评测测试功能的第二行(t.daemon = True)时,它停止工作。有没有办法让它在守护程序线程模式下工作?
我无法在互联网上找到任何解决方案,甚至与此相关。我知道这不是文件操作的最佳方式。
答案 0 :(得分:0)
守护程序线程意味着python不需要在程序退出之前等待线程完成。 那么,会发生什么:
test()
启动帖子
test()
结束,包含test()
(可能是主线程)的线程结束
没有非守护程序线程
python退出。
我真的不认为您希望该线程成为守护程序线程。
如果这样做,您应该有一些非守护程序线程调用t.join()
,以便您等待该线程完成。