NSTask + ps + App Sandbox = 错误

3

我正在尝试通过在OS X上使用NSTask运行bash“ps”命令来获取进程列表。

当我启用App Sandbox时,应用程序会崩溃并在控制台中出现以下错误:

14.06.14 2:16:35,426 sandboxd[356]: ([74340]) MyApp(74340) deny forbidden-exec-sugid

这个问题有没有解决方案?

代码片段:

NSTask *topTask = [NSTask new];
[topTask setLaunchPath:@"/bin/ps"];
[topTask setArguments:[NSArray arrayWithObjects:
                       @"-eo", @"pid,pcpu,rss,comm", // output columns
                       nil]];
1个回答

0

似乎libproc也无法提供其他进程的CPU信息。proc_pid_rusage可以完美地获取CPU时间,但是如果激活沙盒,则无论您给出哪个PID,都只能获取自己的CPU时间:( - Axel Zehden

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接