2 回答

TA貢獻(xiàn)1848條經(jīng)驗(yàn) 獲得超2個(gè)贊
exec 在進(jìn)程終止后返回。因此,在執(zhí)行之后,您無(wú)法終止該進(jìn)程,因?yàn)樗辉龠\(yùn)行。你必須用proc_open運(yùn)行這個(gè)過(guò)程,然后你可以用proc_terminate殺死它。
編輯:實(shí)際上,如果您將命令的輸出重定向到文件并附加到命令的末尾(或使用nohup;Linux只是可能),所以它在后臺(tái)運(yùn)行。但是讓pid發(fā)送殺戮信號(hào)只能通過(guò)名稱(chēng)來(lái)實(shí)現(xiàn),這并不是很可靠&

TA貢獻(xiàn)1752條經(jīng)驗(yàn) 獲得超4個(gè)贊
您可以使用posix_kill來(lái)終止具有標(biāo)識(shí)符 pid 的進(jìn)程。
用法
//...
exec($dira . "\\htdocs\\PocketMine-MP-stable\\start.cmd", $output);
$pid = (int)$output[0];
$killed = posix_kill(int $pid , int $sig);
您應(yīng)該使用以下命令查看系統(tǒng)中的所有信號(hào)及其代碼:kill -l
檢查我的 Repl 示例
- 2 回答
- 0 關(guān)注
- 194 瀏覽
添加回答
舉報(bào)