половинка на четвертинку. в принципе работает, но спрадические вызовы exit() в недрах на тот или иной чих заставляют задуматься о жестком рефакторинге :-/
не умеет ssl, не умеет повторяющиеся события таймера, устаревшая и неполная документация, кривой дизайн(все события описываются одной struct event которой явно не хватает для этого), нельзя задать свою структуру события(если тока через *ev_arg), постоянные новые баги(http://levent.svn.sourceforge.net/viewvc/levent/branches/patches-1.4/libevent...), код требует переписывания местами и вообще сложные для восприятия исходники, кривые макросы которые лучше не смотреть как работают(макросы EVENT_SIGNAL и EVENT_FD не просто так совпадают). Несколько моих знакомых даже патчи коммитили к libevent чтобы лечить болячки :).
Короче, автор libev где-то писал почему он не любит libevent. Вот тут даже немного написано: http://cvs.schmorp.de/libev/README (правда, сильно смахивает на пеар).
Я не хочу сказать что libevent не юзабелен, просто ищу альтернативы у которых меньше груз прошлых лет который мешает развиваться проекту.
> ps: а зачем диспатчеру событий уметь SSL :-? это уже уровень выше.
это не просто диспатчер, в том-то и дело. Это целый комбайн который много чего умеет. И днс, и http и буфферизированный tcp через low_watermark и high_watermark итп. Тока делает это на примитивном уровне и часто криво. А event loop это тока маленькая часть libevent.
> это не просто диспатчер, в том-то и дело. Это целый комбайн который много чего умеет. И днс, и http и буфферизированный tcp через low_watermark и high_watermark итп. Тока делает это на примитивном уровне и часто криво. А event loop это тока маленькая часть libevent.
об одном :). Например, man evdns. В man event рассказано про buffered events и non-blocking http. Есть ещё модули для libevent, тока их не хотят включать в стандартный пакет.