저는 Linux에서 epoll을 머리에 쓰려고합니다. 나는 그것으로 할 수있는 다른 파일 작업이 세 가지는 epoll 기능 외에, epoll_fd
정규 파일 기술자가 될 것 같다가 주어진 :epoll 파일 설명자 작업
// Create the epoll_fd
int epoll_fd = epoll_create(10);
...
// Add file descriptors to it
struct epoll_event ev = {0};
ev.events |= EPOLLIN;
ev.data.ptr = ...;
/* for brevity, I don't do error checking here */
epoll_ctl(epoll_fd, EPOLL_CTL_ADD, some_fd, &ev);
...
// Wait for IO events
struct epoll_event events[10];
int num_events = epoll_wait(epoll_fd, events, 10, -1);
// Now handle the events
...
내 질문은 이것이다 :
정상적인 동작이 될 것으로 보인다 전화? man page에서
사용하기 전에'* 왜 당신이 그것을 사용하고 * 당신의 당신은
poll(2)
수 있습니다. 그것은 완전히 비표준이고 이식성이 없으며 사람들이 사용하는 대다수의 장소에서 측정 가능한 이점이 없습니다. 열린 파일 제한을 1024에서 50000 이상으로 늘리지 않는 한 모든 이유가없이 코드를 이식 할 수 없게 만듭니다. –