# File lib/pr_eventmachine.rb, line 648 648: def eventable_write 649: 40.times { 650: break if @outbound_q.empty? 651: begin 652: data,target = @outbound_q.first 653: 654: # This damn better be nonblocking. 655: io.send data.to_s, 0, target 656: 657: @outbound_q.shift 658: rescue Errno::EAGAIN 659: # It's not been observed in testing that we ever get here. 660: # True to the definition, packets will be accepted and quietly dropped 661: # if the system is under pressure. 662: break 663: rescue EOFError, Errno::ECONNRESET 664: @close_scheduled = true 665: @outbound_q.clear 666: end 667: } 668: end