libevent和epoll,哪个更有效率?

时间:2011-05-25 05:49:21

标签: epoll libevent

我认为这些是最好的两个事件处理库。

这两个用户都有很多,但哪个用户更好?

2 个答案:

答案 0 :(得分:7)

epoll由Linux提供。 libevent建立在epoll之上。 如果你知道自己在做什么,那么单独使用epoll 可能会更有效率。

答案 1 :(得分:6)

正如blais所提到的,libevent在内部使用了epoll。 Libev(http://software.schmorp.de/pkg/libev.html)也是一个不错的选择(我觉得它比libevent好,但那只是我)。至于我,我在一些项目中直接使用了epoll,在其他项目中使用了libev。我喜欢libev,因为它还提供定时器,信号,定期计时器(类似cron)和统计观察者。

那么哪个更好?如果你想看几个套接字描述符,那么epoll可能就是你所需要的。如果您正在编写多线程应用程序,那么libevent / libev可能是更好的方法。我不认为你会看到epoll和libevent / libev之间存在明显的速度差异。