Я переписываю многопоточное приложение Linux-2.6.32 + для замены select
на epoll
.В чем преимущество использования epoll_create1() вместо epoll_create()
Человек страниц для epoll_create1(2) что:
Если флаги 0, то, кроме того, что устаревший аргумент размер отбрасывается, epoll_create1() такая же, как epoll_create().
Тем не менее, не является ли это устаревшее аргументом размера используется в качестве epoll_wait(2)
maxevents
?
epoll_wait(int epfd, struct epoll_event *events,
int maxevents, int timeout);
Это означает, что при использовании Epoll мы можем избежать объявлений максимального количества событий в epoll_create1
, но рано или поздно мы должны ссылаться на него при вызове epoll_wait
? Если да, то в чем смысл приносить epoll_create1
в игру?
Спасибо, что просветили меня по этому вопросу.
Спасибо за объяснение это. В 'epoll_create1' я просто позволяю самому ядру измерять внутренние структуры, хорошо. Я думал, что параметр «maxevents» тоже будет сброшен, но это не тот случай. – noisebleed