我想構(gòu)建一個(gè) Grunt 任務(wù),它生成一個(gè) Go 服務(wù)器,然后在 Go 源文件更改時(shí)殺死并重新生成它。我正在生成這樣的 Go 進(jìn)程:goProcess = child_process.exec('go run main.go', ...后來(lái)我試圖終止這樣的進(jìn)程:if (goProcess) { goProcess.kill('SIGINT');}但是 Go 進(jìn)程并沒(méi)有消亡。如何正確終止 Node 中的 Go 進(jìn)程?我在這里有一個(gè)工作示例https://github.com/sporto/go-must-die
1 回答

滄海一幻覺(jué)
TA貢獻(xiàn)1824條經(jīng)驗(yàn) 獲得超5個(gè)贊
child_process.exec
在 shell 中運(yùn)行命令,似乎正在返回 shell 進(jìn)程的 PID。使用 spawn 代替。
go run
創(chuàng)建一個(gè)可執(zhí)行文件并使用不同的 PID 運(yùn)行它。嘗試使用go build main.go
node.js構(gòu)建二進(jìn)制文件并運(yùn)行該二進(jìn)制文件。
goProcess = child_process.spawn('./main')
- 1 回答
- 0 關(guān)注
- 210 瀏覽
添加回答
舉報(bào)
0/150
提交
取消