Erlang内核空间轮询

gtlvzcf8  于 2022-12-08  发布在  Erlang
关注(0)|答案(1)|浏览(142)

我只想知道FreeBSD的kqueue和Linux的epoll以及其他内核空间轮询函数是否是处理套接字和连接的默认操作系统行为?
我问这个问题是因为我已经阅读了Erlang网络驱动程序部分的源代码,该部分处理tcp请求,并且有任何kqueueepoll或类似的东西来轮询来自套接字的事件

vecaoik1

vecaoik11#

根据博客文章I/O polling options in OTP 21,从Erlang/OTP 21.0开始,是否使用内核轮询是在编译时决定的(在早期版本中,您可以通过传递+K命令行选项显式激活它)。据我所知,只要您的系统支持,它将默认为on。
可以使用system_info检查内核轮询是否已激活:

> erlang:system_info(kernel_poll).
true

相关问题