Module: Schatz::Schemes::DirectTcp
- Defined in:
- lib/schatz/schemes/direct_tcp.rb
Class Method Summary collapse
Class Method Details
.direct_test(host, port, timeout = 0.1) ⇒ Object
6 7 8 9 10 11 12 13 14 |
# File 'lib/schatz/schemes/direct_tcp.rb', line 6 def self.direct_test(host, port, timeout =0.1) addr = Socket.pack_sockaddr_in(port, host) s = Socket.new(:AF_INET, :SOCK_STREAM, 0) begin s.connect_nonblock(addr) rescue Errno::EINPROGRESS IO.select(nil, [s], nil, timeout) ? true : (raise Timeout::Error) end end |