微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

kqueue有什么局限性?

如何解决kqueue有什么局限性?

| libev的文档(源)说:   值得一提的是Kqueue,因为在撰写本文时,它在除NetBSD之外的所有BSD上都被破坏了(通常它不能与套接字和管道一起可靠地工作,除了在Darwin上,当然它是完全没用的) )。 它还提到:   kqueue syscall在所有已知版本中均被破坏-大多数版本仅支持套接字,许多支持管道。 那么,kqueue的局限性是什么?这些限制在哪里记录?最初的研究发现了对旧版操作系统(Mac OS X 10.3)上的内核恐慌的参考,以及有关文档不正确/不完整的投诉。我不知道这些来源有多可靠。 特别是,如果kqueue确实可以与套接字(AF_UNIX,AF_INET和AF_INET6)可靠地一起工作,那么我不在乎。我对有关Mac OS X和FreeBSD实现的信息特别感兴趣。     

解决方法

在OS X上,
AF_UNIX
AF_INET
AF_INET6
应该没有问题。如果要在OS X <10.9上的PTY中使用它,则会遇到问题,因为这些版本不支持PTY。有证据表明,在OS X 10.9上最终支持PTY。 如果尝试使用非文件描述符通知,您将开始遇到其他限制(例如,不支持AIO)。 我对FreeBSD的kqueue实现不熟悉。也许其他人可以添加有关此信息。     ,
kqueue
可以在FreeBSD上完美运行,至少对于网络而言。我已经使用最多18万个活动插座对自己的网络进行了测试。我不知道AIO ..还没有测试自己。     

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其他元素将获得点击?
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。)
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbcDriver发生异常。为什么?
这是用Java进行XML解析的最佳库。
Java的PriorityQueue的内置迭代器不会以任何特定顺序遍历数据结构。为什么?
如何在Java中聆听按键时移动图像。
Java“Program to an interface”。这是什么意思?