我正在写一个简单的python脚本使用子进程来获得iDevices列表附加到我的mac。我使用的命令是"instruments -s devices“。当我在命令行中运行时,这个命令运行得很好,但是当我在subprocess中使用相同的命令时,我会遇到问题。
下面是我的简单python脚本
import subprocess
cmd = ['instruments', '-s', 'devices']
response = subprocess.Popen(cmd,stdout=subprocess.PIPE)
print response.communicate()当我运行上面的python命令时,我的终端屏幕如下所示
MacBook-Pro-9:lib darren$ python iOSRemoteLib.py
2016-09-05 14:30:38.648 instruments[21276:1052546] WebKit Threading Violation - initial use of WebKit from a secondary thread.python进程挂起,不返回任何响应。看起来像是线程问题,我不知道是什么问题。
谢谢
发布于 2016-09-17 14:04:45
你有两个版本的Xcode吗?我也面临着子进程(instruments -s devices)挂起的完全相同的问题。我有XCode 8.0和7.3.1。这个问题只有在我切换到7.3.1之后才会发生。事实证明,subprocess.Popen(sudo instruments -s devices,stdout=subprocess.PIPE)运行得很好。所以可能是权限问题。
https://stackoverflow.com/questions/39330843
复制相似问题