class EventMachine::EvmaUNIXServer
@private
def eventable_read
socket and a sockaddr_in which names the peer.
accept_nonblock returns an array consisting of the accepted
--
def eventable_read begin 10.times { descriptor,peername = io.accept_nonblock sd = StreamObject.new descriptor EventMachine::event_callback uuid, ConnectionAccepted, sd.uuid } rescue Errno::EWOULDBLOCK, Errno::EAGAIN end end
def initialize io
def initialize io super io end
def schedule_close
--
def schedule_close @close_scheduled = true end
def select_for_reading?
def select_for_reading? true end
def start_server chain
play it safe and just build a socket.
with an object of type TCPServer. Prior versions won't so we
Versions of ruby 1.8.4 later than May 26 2006 will work properly
def start_server chain sd = Socket.new( Socket::AF_LOCAL, Socket::SOCK_STREAM, 0 ) sd.setsockopt( Socket::SOL_SOCKET, Socket::SO_REUSEADDR, true ) sd.bind( Socket.pack_sockaddr_un( chain )) sd.listen( 50 ) # 5 is what you see in all the books. Ain't enough. EvmaUNIXServer.new sd end