Windows下使用syscall.SIGUSR1报错:SIGUSR1 not declared by package syscall

windows打开hyperledger/fabric项目时,\fabric\integration\e2e\e2e_signal_test.go中的syscall.SIGUSR1会报错。

这是因为 windows 下的信号没有 SIGUSR1、SIGUSR2 等,为了不轻易的抛弃 windows 环境。目前用了一个 ditty 的办法解决:
在 go 的安装目录修改 Go\src\syscall\types_windows.go,增加如下代码:

var signals = [...]string{
    // 这里省略N行。。。。
 
    /** 兼容windows start */
    16: "SIGUSR1",
    17: "SIGUSR2",
    18: "SIGTSTP",
    /** 兼容windows end */
}
 
/** 兼容windows start */
func Kill(...interface{}) {
    return;
}
const (
    SIGUSR1 = Signal(0x10)
    SIGUSR2 = Signal(0x11)
    SIGTSTP = Signal(0x12)
)
/** 兼容windows end */

原文出处:https://blog.csdn.net/qq_28466271/article/details/116521955

(全文完)

更多关于大数据、分布式、存储、区块链、Linux相关文章请关注微信公众号:asympTech渐进线实验室

Github、知乎、博客园、CSDN、简书全网唯一id:JasonCeng

Windows下使用syscall.SIGUSR1报错:SIGUSR1 not declared by package syscall

技术人,不白嫖,如果您觉得文章对您有帮助,帮忙点个推荐吧~

Windows下使用syscall.SIGUSR1报错:SIGUSR1 not declared by package syscall

上一篇:C#开发Windows服务的基础代码


下一篇:WinHTK开发与使用二:孤立词识别