【发布时间】:2017-10-05 17:35:19
【问题描述】:
epoll_wait() 的第二个参数是一个大小 = sizeof (struct epoll_event) * 调用者期望(或监控)的事件总数(文件描述符)的缓冲区。在第一次传递给 epoll_wait() 之前,这个缓冲区总是初始化为零。
对于下面的代码sn-p
memset(&events[0], 0, maxEvents * sizeof (struct epoll_event))
do
{
result = epoll_wait(epoll_fd, &events[0], maxEvents, timeout)
if (result)
{
//process events
}
} while (1)
每次epoll_wait()返回处理完事件后重新设置events缓冲区好不好?
【问题讨论】: