终止“go-run”进程会导致哪些幻影进程?

终止“go-run”进程会导致哪些幻影进程?,go,Go,我运行的服务器具有: 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/89r25

我运行的服务器具有:

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
当我也终止这个相关进程时,我看到我的连接按预期释放

有没有比杀死PID更好的“真正”杀死golang进程的方法?还是说存在这些幻影过程的原因

我两个都杀了,但这似乎。。。奇怪

$ go version
go version go1.5.4 darwin/amd64

你称之为“幻影进程”的是你的服务器,这就是为什么杀死它会杀死你的服务器。另一个是“go run”实用程序本身,它编译您的代码,然后运行生成的可执行文件。

您调用“幻影进程”的是您的服务器,这就是为什么杀死它会杀死您的服务器。另一个是“go run”实用程序本身,它编译代码,然后运行生成的可执行文件