2016-08-05 23 views
0

我一直在運行的服務器:殺死一個「跑步」過程導致的幻影過程是什麼?

go run server.go & 

當我與過程完成的,這需要我殺的過程。我一直這樣做的方式是go run流程的kill PID

但是,我注意到我的服務器似乎仍然連接。進一步調查似乎還有其他的程序走的是其開始出現「保持」我的服務器:

$ps aux | grep go 
username 70481 0.0 0.0 573416816 5228 ?? S  3:15PM 0:00.63 /var/folders/wf/89r2567s5hv48lj1g9l65mbw0000gp/T/go-build062422854/command-line-arguments/_obj/exe/server 
username 70472 0.0 0.0 573407408 7720 ?? S  3:15PM 0:00.80 go run server.go 

當我殺死這個關聯的過程,我也認爲這是我的預期連接被釋放。

有沒有比kill PID「真的」殺死golang進程更好的方法?還是有一個原因,爲什麼有這些幻影過程?

我已經使出但這似乎......奇怪。

$ go version 
go version go1.5.4 darwin/amd64 

回答

2

你打電話「幻影進程」上的人是你的服務器,這就是爲什麼它殺死殺死你的服務器。另一個是「運行」實用程序本身,它正在編譯您的代碼,然後運行生成的可執行文件。