例如,如果我使用来自c程序的system()命令来调用shell命令是否它将完成shell命令然后它将继续执行程序或者它将同时执行两个
有哪些可用于查找此信息的方法?
答案 0 :(得分:1)
您可以使用fork()
或exec()
进行非阻止,但system()
来电正在阻止。这意味着它会在恢复执行C程序之前等待shell命令完成。
请注意,如果您希望立即返回,则可以发出system
命令,其背后有&
,您的C程序将同时运行。
顺序示例:
system("long_script.sh");
并发示例:
system("long_script.sh &");