event_machine: split out server and client classes
[rainbows.git] / lib / rainbows / event_machine / server.rb
blob696bc8bed573b5e182a1fbe286529bba895476de
1 # -*- encoding: binary -*-
2 module Rainbows::EventMachine::Server # :nodoc: all
3   def close
4     detach
5     @io.close
6   end
8   # CL, CUR and MAX will be set when worker_loop starts
9   def notify_readable
10     return if CUR.size >= MAX
11     io = @io.kgio_tryaccept or return
12     sig = EM.attach_fd(io.fileno, false)
13     CUR[sig] = CL.new(sig, io)
14   end
15 end