2013-04-02 78 views
0

以下代碼是否會在調用abort()之前等待命令執行完成? 如果不是,並且父進程被中止,那麼子進程(bash shell)是否還活着並繼續執行該命令。寫模式管道同步嗎?

FILE *_popenShell = NULL; 
_popenShell = popen("/bin/bash","w"); 
fwrite("some_command", 1, SOME_SIZE, _popenShell); 
fflush(_popenShell);   
pclose(_popenShell);   
abort(); 

回答

0

pclose()等待,直到孩子終止(使用wait4())。在您點擊abort()時,孩子不應該跑步。