FreeBSD + Kqueue/Poll + Libevent
Valery Kholodkov
valery+nginxru на grid.net.ru
Сб Авг 20 09:53:12 UTC 2011
urri пишет:
> Собственно мой вопрос был: почему Kqueue
> может не возвращать сокет приложению
> для чтения данных, хотя известно что
> данные ОС для данного соединения уже
> получила.
Так может происходить по следующим причинам:
1) Отправитель не послал флаг PSH и данные не превысили размер входного
буфера (за исключением слечае, когда канал чтения явно закрывается
приложением на другой стороне);
2) Используется EV_ONESHOT и данные не были полностью вычитаны приложением;
3) Используется SO_RCVLOWAT и не было принято достаточно данных для
генерации события.
--
Best regards,
Valery Kholodkov
Подробная информация о списке рассылки nginx-ru