Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 31 Jan 2010 23:21:37 +0100
From:      Pieter de Goeje <pieter@degoeje.nl>
To:        James Mansion <james@mansionfamily.plus.com>
Cc:        freebsd-java@freebsd.org
Subject:   Re: OpenJDK 6/7 kqueue based NIO provider
Message-ID:  <201001312321.38447.pieter@degoeje.nl>
In-Reply-To: <4B65E6D3.2010809@mansionfamily.plus.com>
References:  <201001301816.16987.pieter@degoeje.nl> <201001311324.54206.pieter@degoeje.nl> <4B65E6D3.2010809@mansionfamily.plus.com>

next in thread | previous in thread | raw e-mail | index | archive | help
On Sunday 31 January 2010 21:23:47 James Mansion wrote:
> Pieter de Goeje wrote:
> > That is an interesting idea, such an implementation could potentially
> > replace all existing back-ends with the exception of the Windows IOCP
> > back-end. However libev doesn't seem to provide a non-blocking poll which
> > is required for NIO (ev_loop always blocks AFAIK).
>
> I'll ask Marc. Would have thought that it wouldn't be too hard to
> arrance an immediate timeout or to register a known-available fd too
> (/dev/null?)

I misread the the documentation, it is in fact possible to do a non-blocking 
poll using the aptly named EVLOOP_NONBLOCK flag :-)

I do think that implementing nio using libev is more work than just using 
kqueue directly, because the libev API is more complex. Especially 
considering the fact that I now have an almost correctly working kqueue 
backend here :D.

--
Pieter



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201001312321.38447.pieter>