真的很简单的问题...我一直在尝试在某些复杂的视频处理上实现多线程(作为单独的问题发布!),但是在这样做的过程中,我认为我找到了实现其他实现的机会应用程序其他部分中的多线程。它似乎可行,但找不到这么简单的示例,因此想知道它是否在按照我的想法做。代码如下:
def update_safe_lock():
with open('lock_file.txt', 'w') as f:
print('%s' % timestamp(), file=f)
main():
<< other irrelevant code >>
update_safe_lock()
<< other irrelevant code >>
现在,我认为可以只在我的main()
函数中交换一行,以使该文件编写在单独的线程中运行,从而允许其余代码在不运行的情况下运行等待文件IO操作。我已将该行更改为:
Thread(target=update_safe_lock).start()
它不会引发任何错误,并且仍会写入文件,因此我认为一切都很好。就是这么简单吗?
如果真的这么简单,那为什么不更普遍呢?对于将基本的非关键文件IO从主线程中移出这么短,简单且容易的事情,这似乎很容易。
再次感谢:)