Date: Mon, 14 May 2007 21:11:33 +0000 From: "Poul-Henning Kamp" <phk@phk.freebsd.dk> To: John Baldwin <jhb@freebsd.org> Cc: cvs-src@freebsd.org, Alexander Motin <mav@freebsd.org>, src-committers@freebsd.org, cvs-all@freebsd.org Subject: Re: cvs commit: src/lib/libnetgraph internal.h msg.c Message-ID: <1155.1179177093@critter.freebsd.dk> In-Reply-To: Your message of "Mon, 14 May 2007 16:45:54 -0400." <200705141645.55584.jhb@freebsd.org>
next in thread | previous in thread | raw e-mail | index | archive | help
In message <200705141645.55584.jhb@freebsd.org>, John Baldwin writes: >On Monday 14 May 2007 10:18:41 am Alexander Motin wrote: >> Log: >> Replace select() by poll() to avoid problems with big >> descriptor number. > >Why not kevent(2)? kevent(2) is most useful if you have many descriptors open (ie: apache). poll(2) works quite well for a low number of descriptors, and doesn't care what their numeric numbers are. select(2) is terrible unless you have a limited number of descriptors and they are all low numbered. This is because of the array representation. Given that poll(2) is a much simpler API than kqueue(2), I'd say it was the right choice here. -- Poul-Henning Kamp | UNIX since Zilog Zeus 3.20 phk@FreeBSD.ORG | TCP/IP since RFC 956 FreeBSD committer | BSD since 4.3-tahoe Never attribute to malice what can adequately be explained by incompetence.
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?1155.1179177093>