fdevent是一套方便的跨平台IO多路复用C语言接口, 主要想法来自 epoll 和 lighttpd 的 fdevent, 接口的使用几乎和 epoll 一样.
示例
while(1) {
nfds = fdevents_wait(evs, 1000);
if(nfds == 0){
//printf("timeout\n");
continue;
}
for(i = 0; i < nfds; i++) {
fde = evs->events[i];
if(fde->flags & FDEVENT_IN){
// ...
}
if(fde->flags & FDEVENT_OUT){
// ...
}
}
}