Hi, I've replaced select() based code in tpop3d server [1] with libevent code to avoid problems with FD_SETSIZE limit. Patch: http://cvs.pld-linux.org/cgi-bin/cvsweb/SOURCES/tpop3d-libevent.patch?rev=1.1
Unfortunately now tpop3d server is eating much more cpu resources than with select() based code. event_dispatch() is run in the main process, listen sockets are created, event_set EV_READ|EV_PERSIST on listen sockets, then accept, add EV_READ| EV_WRITE|EV_PERSIST on accepted socket, then fork. When client logs out events (on accepted sockets) are deleted trough event_del(). I'm using libevent-1.1a on linux 2.6, glibc 2.3.6 so epoll() is used. 1. http://ex-parrot.com/~chris/tpop3d/ (cvs version) -- Arkadiusz MiĆkiewicz PLD/Linux Team arekm / maven.pl http://ftp.pld-linux.org/ _______________________________________________ Libevent-users mailing list Libevent-users@monkey.org http://monkey.org/mailman/listinfo/libevent-users