macosx中的多线程技术

macosx中的多线程技术,c,windows,multithreading,macos,C,Windows,Multithreading,Macos,Mac OS X中Windows的CreateProcess()和WaitForSingleObject()的等价物是什么 希望我的C程序在.app运行完成时暂停。如果您正在运行一个C程序,并且希望执行另一个单独的应用程序并等待它完成,最简单的选择是只使用system()-请参阅文档 示例: #include <stdlib.h> ... system("myApp"); #包括 ... 系统(“myApp”); 在OS X中,最接近CreateProcess()的是执行fork

Mac OS X中Windows的CreateProcess()和WaitForSingleObject()的等价物是什么


希望我的C程序在.app运行完成时暂停。

如果您正在运行一个C程序,并且希望执行另一个单独的应用程序并等待它完成,最简单的选择是只使用
system()
-请参阅文档

示例:

#include <stdlib.h>
...

system("myApp");
#包括
...
系统(“myApp”);

在OS X中,最接近CreateProcess()的是执行fork()和exec()。但是,如果您试图从C程序启动.app,您可以使用

System("open <pathToApp>");
系统(“开放”);
第二部分是获得应用程序退出的通知。任何IPC机制都将帮助您完成此操作。提供关于可行选项的见解。在这种情况下,当应用程序退出时,它可以通知C程序


如果应用程序没有优雅的退出,这可能不起作用。情况是当它崩溃时。这里唯一的方法就是轮询pid。C程序可以使用ps命令获取已启动应用程序的pid。每隔一段时间不断检查pid是否存在。

fork()
exec()
wait()
/
waitpid()
,以及pthreads?或者您可以
sleep()