【文件属性】:
文件名称:go-daemon:用于在golang中编写系统守护程序的库
文件大小:70KB
文件格式:ZIP
更新时间:2021-02-02 16:09:38
go golang library daemon pid
守护进程
用于在Go中编写系统守护程序的库。
现在仅支持基于UNIX的操作系统(不支持Windows)。 但是该库仅在Linux和OSX上进行了测试,因此,如果您有能力在其他平台上进行测试,请给我反馈(#26)。
请随时向我发送错误报告和修复。 非常感谢所有贡献者。
产品特点
Goroutine安全守护程序;
开箱即用的pid文件;
易于处理系统信号;
守护程序的控制。
安装
go get github.com/sevlyar/go-daemon
您可以使用 :
go get gopkg.in/sevlyar/go-daemon.v0
如果要在生产项目中使用该库,请使用供应商,因为在v1.0版之前我不能保证向后兼容。
例子
文献资料
这个怎么运作
我们不能在Golang的运行时中使用fork syscall,因为在这种情况下子进程不会继承线程和goroutine。 该库使用了一个简单的技巧:它运行带有标记的预定义副本-预定义的环境变量。 该过程的变量可用性意味着在子副本中执行。 因此,如果未设置标记,则库将执行父级的操作并运行带有标记的自己的副本;如果设置了标记,则库将执
【文件预览】:
go-daemon-master
----compilation_test.go(1KB)
----syscall_dup_arm64.go(254B)
----daemon_stub.go(1KB)
----syscall_dup.go(194B)
----daemon.go(1KB)
----os_executable.go(115B)
----command.go(2KB)
----img()
--------idea.png(56KB)
----lock_file_test.go(2KB)
----lock_file_solaris.go(679B)
----syscall_dup_pre17.go(189B)
----examples()
--------cmd()
----.travis.yml(211B)
----daemon_test.go(1KB)
----LICENSE(1KB)
----os_executable_pre18.go(143B)
----README.md(2KB)
----signal.go(1KB)
----daemon_unix.go(5KB)
----lock_file_unix.go(429B)
----lock_file.go(3KB)
----lock_file_stub.go(218B)