登录
首页 >  Golang >  Go问答

在golang中最优的事件处理方法

来源:stackoverflow

时间:2024-02-10 17:36:23 164浏览 收藏

golang学习网今天将给大家带来《在golang中最优的事件处理方法》,感兴趣的朋友请继续看下去吧!以下内容将会涉及到等等知识点,如果你是正在学习Golang或者已经是大佬级别了,都非常欢迎也希望大家都能给我建议评论哈~希望能帮助到大家!

问题内容

我想在 golang 中实现一种方法来对三种不同类型的事件做出反应:

  • 文本文件中的更改 (inotify)
  • Timerevents(计时器已结束)
  • 收到 Linux 信号 (SIGUSR1)

软件应该在空闲状态下无限等待事件,如果收到来自文件更改、计时器或信号的事件,则应该调用相应的处理函数。 事件处理后,等待事件应该继续。

我查看了每个事件的频道 使用了一个单独的 goroutine,但到目前为止没有发现任何符合我需求的东西..

有人有建议或示例如何在 golang 中以最好的方式完成此操作吗? 非常感谢!


正确答案


文件系统通知

https://github.com/fsnotify/fsnotify

计时器事件

https://gobyexample.com/timers

信号处理

https://pkg.go.dev/os/signal

https://gobyexample.com/signals

^ syscall 库支持 SIGUSR1

今天关于《在golang中最优的事件处理方法》的内容就介绍到这里了,是不是学起来一目了然!想要了解更多关于的内容请关注golang学习网公众号!

声明:本文转载于:stackoverflow 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>