比方说,我已经按照指定的顺序设置了一组文件描述符,比如说8,9,10,11,12,并对它们读取数据做一个epoll_wait()。返回epoll中的文件描述符的顺序是什么?
epoll_wait返回的数据将在套接字8,10和11上读取。请问在epoll数组中返回的文件描述符的顺序是8,10和11还是它们可能混乱?
比方说,我已经按照指定的顺序设置了一组文件描述符,比如说8,9,10,11,12,并对它们读取数据做一个epoll_wait()。返回epoll中的文件描述符的顺序是什么?
epoll_wait返回的数据将在套接字8,10和11上读取。请问在epoll数组中返回的文件描述符的顺序是8,10和11还是它们可能混乱?
The man page没有特别说明任何关于订单的事情,所以在你打电话时依靠订单可能不是一个好主意。即使他们在一次执行中依次返回,他们也可能不在另一次执行中。最好假设他们可以以任何顺序返回。
只要从逻辑上思考一下。大概他们并不是全部被标记为单一原子操作的可读性,并且epoll_wait可能只是每次调用时返回1个fd。依靠输出的顺序是没有意义的。
为什么这么重要? – 2012-03-19 12:50:32
我需要它来实现...如果它的顺序是相同的,那么我会随时使用我想要的索引并检查它是否已设置。 – VSN 2012-03-19 12:56:29