On Wed, 2006-05-10 at 02:39 +0900, tsuraan / tsuraan.net wrote:
> > LOL! Considering we're doing essentially a completely parallel rewrite 
> > of
> > EventMachine for Windows (using I/O completion ports), and will 
> > probably do
> > one for Linux 2.6 kernels (using epoll), it wouldn't take much to do 
> > one in
> 
> Is libevent an option for this?  I don't really know much about it, but 
> it seems to wrap poll/epoll type things pretty nicely.
> 
> 

Already did that a long time ago.
http://www.zedshaw.com/projects/ruby_event/ and it worked OK.  Even
implemented the original SCGI Rails Runner using it as well as a telnet
processor.  Problem came from a clash with select in Ruby and libevent.

Francis solved it by using a pthread to run the select separately from
the ruby interpreter.  Something similar could be done with Ruby/Event
but most of my time is spent on Mongrel these days.

Incidentally, Ruby is apparently picking up libevent based events rather
than select for it's threads so a lot of this might be totally useless
in a year, or two, or ten, or whenever.


-- 
Zed A. Shaw
http://www.zedshaw.com/
http://mongrel.rubyforge.org/