golang在正在运行的二进制文件/进程上执行命令

安东尼·德·梅勒梅斯特

如果您查看Nginx,它会调用“ nginx reload”来重新加载自身。有什么方法可以从命令行向正在运行的进程发送信号吗?即使主进程启动了子进程,如何向主进程发送命令以通知其子进程?

前任:

myapp start -debug // starts a server
myapp reload -gracefull // stops the app gracefully

现在,我需要发送os信号来通知服务器执行正常关机

kill -QUIT pid
kill -USR2 pid

我希望我的问题很清楚Thnx

埃米尔·达夫蒂安(Emil Davtyan)

接收信号

看一看os/signal包装。

封装信号实现对传入信号的访问。

文档中甚至有一个示例

// Set up channel on which to send signal notifications.
// We must use a buffered channel or risk missing the signal
// if we're not ready to receive when the signal is sent.
c := make(chan os.Signal, 1)
signal.Notify(c, os.Interrupt, os.Kill)

// Block until a signal is received.
s := <-c
fmt.Println("Got signal:", s)

发送信号

要查看如何发送信号signal_test.go,请使用syscall例如 :

// Send this process a SIGHUP
t.Logf("sighup...")
syscall.Kill(syscall.Getpid(), syscall.SIGHUP)
waitSig(t, c, syscall.SIGHUP)

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何恢复正在运行的进程被删除的二进制可执行文件

来自分类Dev

如何知道哪个脚本/二进制/其他正在运行的进程?

来自分类Dev

升级期间如何更新正在运行的应用程序二进制文件?

来自分类Dev

如果从该二进制文件产生的任何进程仍在运行,是否可以在Linux中修改源二进制文件?

来自分类Dev

fork() 是否还会复制调用进程当前正在执行的可执行二进制文件的文件描述符?

来自分类Dev

不明白为什么我不能在tclsh中执行命令行二进制文件

来自分类Dev

如何运行此“ find”命令,但只能在非二进制文件上运行?

来自分类Dev

执行前验证命令二进制文件

来自分类Dev

可执行二进制文件无法在android棉花糖上运行

来自分类Dev

尝试在Linux上运行Shell脚本时“无法执行二进制文件”

来自分类Dev

无法在Ubuntu 12.04上运行二进制可执行文件

来自分类Dev

无法在Mac OS上执行二进制文件

来自分类Dev

无法在Ubuntu 17.10上执行二进制文件

来自分类Dev

无法在离线机器上执行二进制文件

来自分类Dev

二进制文件未在Debian Wheezy上运行

来自分类Dev

二进制文件未在Debian Wheezy上运行

来自分类Dev

如何在Heroku上运行二进制文件

来自分类Dev

运行exec()时出错。命令:工作目录:null环境:null-如何在非根设备上正确在Android中执行二进制文件?

来自分类Dev

将 Emacs 作为守护进程运行,然后运行 emacs 二进制文件

来自分类Dev

从Java执行C二进制文件并从进程的输出流中读取

来自分类Dev

UiPath进程可以转换为二进制可执行文件吗?

来自分类Dev

如何从Android本机二进制文件运行单独的进程?

来自分类Dev

g ++编译的二进制文件给出“无法执行二进制文件”

来自分类Dev

mac osx yosemite gcc无法执行二进制文件,找不到命令

来自分类Dev

命令和二进制文件存在,但无法执行

来自分类Dev

使用noexec选项在文件系统上执行bash脚本或ac二进制文件

来自分类Dev

在Android中运行FFmpeg可执行二进制文件

来自分类Dev

从JAR为AWS Lambda运行二进制可执行文件

来自分类Dev

无法使用bash程序执行二进制文件,但使用./program运行

Related 相关文章

  1. 1

    如何恢复正在运行的进程被删除的二进制可执行文件

  2. 2

    如何知道哪个脚本/二进制/其他正在运行的进程?

  3. 3

    升级期间如何更新正在运行的应用程序二进制文件?

  4. 4

    如果从该二进制文件产生的任何进程仍在运行,是否可以在Linux中修改源二进制文件?

  5. 5

    fork() 是否还会复制调用进程当前正在执行的可执行二进制文件的文件描述符?

  6. 6

    不明白为什么我不能在tclsh中执行命令行二进制文件

  7. 7

    如何运行此“ find”命令,但只能在非二进制文件上运行?

  8. 8

    执行前验证命令二进制文件

  9. 9

    可执行二进制文件无法在android棉花糖上运行

  10. 10

    尝试在Linux上运行Shell脚本时“无法执行二进制文件”

  11. 11

    无法在Ubuntu 12.04上运行二进制可执行文件

  12. 12

    无法在Mac OS上执行二进制文件

  13. 13

    无法在Ubuntu 17.10上执行二进制文件

  14. 14

    无法在离线机器上执行二进制文件

  15. 15

    二进制文件未在Debian Wheezy上运行

  16. 16

    二进制文件未在Debian Wheezy上运行

  17. 17

    如何在Heroku上运行二进制文件

  18. 18

    运行exec()时出错。命令:工作目录:null环境:null-如何在非根设备上正确在Android中执行二进制文件?

  19. 19

    将 Emacs 作为守护进程运行,然后运行 emacs 二进制文件

  20. 20

    从Java执行C二进制文件并从进程的输出流中读取

  21. 21

    UiPath进程可以转换为二进制可执行文件吗?

  22. 22

    如何从Android本机二进制文件运行单独的进程?

  23. 23

    g ++编译的二进制文件给出“无法执行二进制文件”

  24. 24

    mac osx yosemite gcc无法执行二进制文件,找不到命令

  25. 25

    命令和二进制文件存在,但无法执行

  26. 26

    使用noexec选项在文件系统上执行bash脚本或ac二进制文件

  27. 27

    在Android中运行FFmpeg可执行二进制文件

  28. 28

    从JAR为AWS Lambda运行二进制可执行文件

  29. 29

    无法使用bash程序执行二进制文件,但使用./program运行

热门标签

归档