由于某些原因,我需要调用系统的一些系统调用(Linux) 我检查了'syscall'软件包的文档,但找不到任何相关信息。
然后我刚看到一个包装windows apis的项目(https://github.com/AllenDang/w32/blob/master/kernel32.go)。我读了一下它的源代码。
使用
modkernel32 = syscall.NewLazyDLL("kernel32.dll")
加载动态库。但是,没有函数NewLazyDLL()
的文档我确信Linux / UNIX应该有类似的功能。有没有人能说出来 我在Golang或者中调用函数的名称或调用Linux系统调用的方法 从libc.so加载函数?
更多详情
我想调用系统调用'守护进程'或'fork'(我想守护进程),因为我找不到golang库提供它们。
答案 0 :(得分:4)
目前Go标准库中没有daemon
样式函数。有an open bug about adding such a feature,但它已推迟到Go 1.1发布之后。我建议阅读错误报告,原因可能是它不像最初出现的那么简单。
除了拥有守护进程fork之外,还有其他方法可以运行守护程序进程。例如,像Upstart和Systemd这样的现代init守护进程可以为你管理这样的守护进程。