Я пишу программу и использую libevent.libevent: событие таймаута не срабатывает
добавить событие
struct timeval tv;
tv.tv_sec = 0;
tv.tv_usec = 10000;
...
...
event_set(&ev, fd, EV_READ|EV_TIMEOUT|EV_PERSIST, callback, NULL);
event_add(&ev, &tv);
, но я заметил, что, если я заменю & телевизор с NULL
, а именно я не хочу событие тайм-аута, то программа работает нормально, событие ev
срабатывает, когда fd
читается, однако, если это &tv
не NULL, событие запускается только в первый раз, когда fd
доступен для чтения.
В чем причина этого? что значение тайм-аута слишком мало? Какое минимальное значение таймаута для libevent, epoll, select. и т.д?
спасибо!