class Kgio::TCPSocket

Kgio::TCPSocket should be used in place of the plain TCPSocket when kgio_* methods are needed.

Public Class Methods

Kgio::TCPSocket.new('127.0.0.1', 80) → socket click to toggle source

Creates a new Kgio::TCPSocket object and initiates a non-blocking connection.

This may block and call any method defined to kgio_wait_writable for the class.

Unlike the ::new in Ruby, this does NOT perform DNS lookups (which is subject to a different set of timeouts and best handled elsewhere).

static VALUE kgio_tcp_connect(VALUE klass, VALUE ip, VALUE port)
{
        return tcp_connect(klass, ip, port, 1);
}
Kgio::TCPSocket.start('127.0.0.1', 80) → socket click to toggle source

Creates a new Kgio::TCPSocket object and initiates a non-blocking connection. The caller should select/poll on the socket for writability before attempting to write or optimistically attempt a write and handle :wait_writable or Errno::EAGAIN.

Unlike the ::new in Ruby, this does NOT perform DNS lookups (which is subject to a different set of timeouts and best handled elsewhere).

static VALUE kgio_tcp_start(VALUE klass, VALUE ip, VALUE port)
{
        return tcp_connect(klass, ip, port, 0);
}