首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >Erlang Linux信号处理

Erlang Linux信号处理
EN

Stack Overflow用户
提问于 2010-03-17 11:08:34
回答 1查看 1.5K关注 0票数 16

是否可以通过Erlang中的处理程序捕获Linux信号(例如SIGUSR1)?(不必求助于用C语言编写的驱动程序)

EN

回答 1

Stack Overflow用户

发布于 2017-01-26 19:32:10

自2017年6月发布Erlang/OTP 20.0以来,这是可能的。这是通过this pull request完成的,它为信号添加了一个名为erl_signal_server的事件管理器。请参阅the kernel manual page中的“操作系统信号事件处理程序”部分。

如果您对SIGUSR1感兴趣,请注意默认处理程序将使Erlang VM停止并产生崩溃转储。为了避免这种情况,仅将您自己的处理程序添加到erl_signal_server中是不够的;您必须用默认处理程序来替换它:

代码语言:javascript
复制
gen_event:swap_handler(erl_signal_server, {erl_signal_handler, []}, {foo, []}).
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2459672

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档