Date: Sat, 23 Oct 2004 15:06:05 -0700 From: Bruce M Simpson <bms@spc.org> To: "Ronald F. Guilmette" <rfg@monkeys.com> Cc: Igor Sysoev <is@rambler-co.ru> Subject: Re: aio_connect ? Message-ID: <20041023220605.GA810@empiric.icir.org> In-Reply-To: <7208.1098550338@monkeys.com> References: <20041023002300.I91215@is.park.rambler.ru> <7208.1098550338@monkeys.com>
index | next in thread | previous in thread | raw e-mail
On Sat, Oct 23, 2004 at 09:52:18AM -0700, Ronald F. Guilmette wrote: > or kevent(), or aio_suspend(). Thus, I still do believe that the judicious > use of the aio_*() functions with signaling could support a dramatically > different programming style, especially for complex network clients and/or > servers that must monitor and respond to events on various kinds of socket > connections, all in the same single program. As was pointed out earlier, it requires POSIX realtime signal support to become useful in this way. I have programmed in this way under Solaris, for what it's worth; I implemented an httpd server using aio calls and real-time signals a few years ago, and the performance as compared to a select()/poll() based server turned out to be far worse, at least in terms of the number of requests per second it was able to handle. I don't recall specific figures. So I would regard it as largely a red herring; the kqueue/kevent mechanism will yield somewhat finer granularity in terms of polling for an i/o completion event from userland on FreeBSD, which seems to be what you're trying to achieve. aio and realtime signals is something we don't really do at the moment. Regards, BMShome | help
Want to link to this message? Use this
URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20041023220605.GA810>
