python - 使用子进程调用时应用程序没有响应
问题描述
当我使用 subprocess.call(['notepad.exe', path]) 时,我的应用程序没有响应有人知道原因吗?
(记事本正确打开路径中的文件)
解决方案
您正在负责 GUI 的线程上运行它。subprocess.call
仅当被调用程序终止时调用才会返回。虽然它仍在运行,但该函数只是坐在那里等待,因此您的 GUI 也被迫等待。
为避免这种情况,请在另一个线程中运行此函数或使用subprocess.call
.
推荐阅读
- java - 在 .classpath 文件 eclipse 中设置 jar 文件的相对路径
- c++ - Box2D OpenGL 错误
- vue.js - 如何在模块中使用 nuxt 挂钩?
- npm - 安装一个“匹配”项目依赖项的依赖项
- javascript - 与 Office UI Fabric 反应 - InputChildren 未触发 onSubmit/onClick
- c++ - 在 C++ 中创建类型向量
- c# - 没有从 api 控制器引用业务逻辑?
- ecmascript-6 - 从 ES2018 async/await 到 ES2015 Promises 。... 超时
- cmake - CTest:如果“预检查”测试失败,如何跳过其他测试?
- webdriverwait - 为什么我的 WebDriverWaits 设置为 20 秒后 1 秒后出错?