我通过授权服务的"AuthorizationExecuteWithPrivileges"调用使用root/admin priveleges执行大量shell命令.问题是,经过一段时间(10-15秒,可能是100个shell命令),程序在调试器中停止响应此错误:
不能分叉:错误35
然后在应用程序运行时,我无法再启动应用程序.我研究了这个问题,显然这意味着没有更多的线程供系统使用.但是,我使用Activity Monitor检查了我的应用程序只使用了4-5个线程.
为了解决这个问题,我认为我需要做的是将shell命令分成一个单独的线程(远离主线程).我之前从未使用过线程,我不确定从哪里开始(我找不到全面的例子)
谢谢