1. 首页
  2. 主题
  3. Go语言

如何Ctrl+C一键kill 掉当前go运行的所有进程?

karl_zhao · · 1610 次点击
最近遇到一个问题,请大佬们指点一下! 在linux系统用go做了一个小工具,go里面调用了10个不同级别的用C++编写的网络数据处理工具,go在运行之后,想通过Ctrl+C把程序停掉,但是实际运行中有如下问题: Ctrl+C之后,go程序停止了,但是里面通过os.exec调用执行的C++可执行文件仍然在运行。结果只能通过kill ID的方式一个个kill掉。 请问,Go有没有一种方式在Ctrl+C之后把所有的运行文件都kill掉呢? 先谢谢了!
创建 `os/exec.Cmd` 的时候给 `SysProcAttr` 字段的 `Pdeathsig` 赋值 `SIGKILL`
#2
更多评论
捕获推出信号,然后你想做啥就做啥
#1
<a href="/user/criyle" title="@criyle">@criyle</a> 非常感谢!
#3

用户登录

没有账号?注册

今日阅读排行

    加载中

一周阅读排行

    加载中