所以我想获得一个进程指针并执行类似Win32 WaitForSingleObject(hProcess, INFINITE);
的操作,如果它不为null,它将等待进程退出。如何为Mac / Unix创建这样的GetProcessByName函数,如Os?
答案 0 :(得分:2)
查看[NSWorkspace runningApplications]
和[NSRunningApplication runningApplicationsWithBundleIdentifier:]
。您可以KVO观察NSRunningApplication的terminated
属性。您还可以观看通知NSWorkspaceDidTerminateApplicationNotification
。
这些都是10.6+。如果您需要早期版本,请根据您的版本要求更新您的问题。它可以在旧版本中使用,但10.6使它变得更容易。
答案 1 :(得分:0)
你无论如何都只能等待一个子进程,如果它是一个子进程,你将拥有它的PID(我永远不会忘记我孩子的名字;只是他们的生日)。
请参阅:waitpid(2)