详细解释为什么说 Python “不是真的多线程”
Python 被认为“不是真的多线程”主要是由于全局解释器锁 (GIL) 的存在。 GIL 是 CPython 解释器(Python 最常用的实现)中的一个机制,它限制了同时只能有一个线程执行 Pyt...
09月26日21,618评论
记一次 Python 应用开发频繁假死的问题
问题背景 最近在开发一款自动化的应用,其中有一个自动化任务会由下面这三个按钮控制: 逻辑也很简单,我大概画下图就是这样的: 但是,在测试时,却发现了问题: 当我点击暂停任务后,此时子线程被阻塞。如果我...
08月01日31,479评论
记一次在 Python 中因为文件路径导致的错误
最近在编写一个自动化应用,需要管理浏览器的状态。 通过单例模式的设计,实现了只有一个浏览器实例,这样其它模块或者函数调用这个浏览器类,用的都是同一个实例,就可以管理这个浏览器的状态了。 类似下面这样调...
07月26日22,048评论
Python 线程中,变量的作用域会有什么不同
# 线程局部存储 thread_local_data = threading.local() 在Python中,线程中的变量作用域与普通的Python程序中的变量作用域是相似的,但在多线程环境中,需要...
07月24日19,900评论