我在golang中發(fā)現(xiàn)了一個(gè)奇怪的問(wèn)題。exec.Start()如果父程序被os.Interrupt信號(hào)中斷,則執(zhí)行的程序會(huì)退出,而如果父程序正常退出,則子程序不會(huì)退出。這兩種情況有什么區(qū)別?舉些例子:package mainimport "fmt"import "os"import "time"import "os/exec"func main(){ cmd := exec.Command("sleep", "100000") cmd.Env = os.Environ() fmt.Println(cmd.Env) cmd.Start() time.Sleep(1e9*20) return} 在后一種情況下,如果我們不中斷主程序,sleep 100000則的父級(jí)將是init process20 秒之后。
添加回答
舉報(bào)
0/150
提交
取消