Sha256: fc60823231ece18507b80114382c2034c682412f9801dbd794bc71610e229476
Contents?: true
Size: 878 Bytes
Versions: 1
Compression:
Stored size: 878 Bytes
Contents
# -*- encoding: binary -*- require 'raindrops' require 'rainbows/epoll' # Edge-triggered epoll concurrency model with blocking accept() in a # (hopefully) native thread. This is just like Epoll, but recommended # for Ruby 1.9 users as it can avoid accept()-scalability issues on # multicore machines with many worker processes. # # === RubyGem Requirements # # * raindrops 0.6.0 or later # * sleepy_penguin 2.0.0 or later # * sendfile 1.1.0 or later module Rainbows::XEpoll # :stopdoc: include Rainbows::Base autoload :Client, 'rainbows/xepoll/client' def init_worker_process(worker) super Rainbows::Epoll.const_set :EP, SleepyPenguin::Epoll.new Rainbows.at_quit { Rainbows::Epoll::EP.close } Rainbows::Client.__send__ :include, Client end def worker_loop(worker) # :nodoc: init_worker_process(worker) Client.run end # :startdoc: end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
rainbows-3.3.0 | lib/rainbows/xepoll.rb |