我查看了和之间poll
的区别。我不明白什么时候应该使用. 考虑到这一点,我没有看到任何优势,并且拥有一切,甚至更多。epoll
select
select
poll
epoll
select
问问题
1502 次
2 回答
0
从历史上看,select
到 1983 年首先出现在 BSD4.2 中。作为第一,它有幸成为最流行和最便携的。
也就是说,两者select
的poll
规模都非常大。根据select
缩放到O(highest_fd)
和poll
到。对于大量文件描述符,它的扩展性要好得多,但仅适用于 Linux。O(total_fds)
LIBEV(3)
epoll
使用像libevent
, libev
, 或这样的事件库libuv
将提供一个抽象层并尝试在您的系统上使用性能最高的方法,因此您不必担心在select
, poll
, epoll
, or之间进行选择kqueue
(对于 MacOS 和 BSD)。
于 2021-03-11T03:50:44.897 回答
-2
select() 监控的文件描述符比 poll() 少。此外,select() 的一些实现只是使用 poll()。
于 2013-08-02T15:43:01.783 回答