A Transmission Control Protocol (TCP/IP) socket.
NOTE To use TCPSocket, you must explicitly import it with require "socket"
Usage example:
require "socket"
client = TCPSocket.new("localhost", 1234)
client << "message\n"
response = client.gets
client.close Creates a new TCPSocket, waiting to be connected.
DEPRECATED parameter blocking Use Socket.set_blocking instead.
Creates a new TCP connection to a remote TCP server.
DEPRECATED parameter blocking Use Socket.set_blocking instead.
Creates an UNIXSocket from an existing system file descriptor or socket handle.
DEPRECATED parameter blocking Use Socket.set_blocking instead.
Opens a TCP socket to a remote TCP server, yields it to the block, then eventually closes the socket when the block returns.
The number of probes sent, without response before dropping the connection.
The amount of time in seconds the connection must be idle before sending keepalive probes.
The amount of time in seconds between keepalive probes.
Disables the Nagle algorithm when set to true, otherwise enables it.
Returns true if the Nagle algorithm is disabled.
IPSocket
Socket
Socket
Socket
Crystal::System::Socket
Crystal::System::Socket
IO::Buffered
IO
IO
Reference
Reference
Reference
Object
Object
Object
Creates a new TCPSocket, waiting to be connected.
DEPRECATED parameter blocking Use Socket.set_blocking instead.
Creates a new TCP connection to a remote TCP server.
You may limit the DNS resolution time with dns_timeout and limit the connection time to the remote server with connect_timeout. Both values must be in seconds (integers or floats).
DEPRECATED parameter blocking Use Socket.set_blocking instead.
Creates an UNIXSocket from an existing system file descriptor or socket handle.
This adopts fd into the IO system that will reconfigure it as per the event loop runtime requirements.
NOTE On Windows, the handle must have been created with WSA_FLAG_OVERLAPPED.
DEPRECATED parameter blocking Use Socket.set_blocking instead.
Opens a TCP socket to a remote TCP server, yields it to the block, then eventually closes the socket when the block returns.
Returns the value of the block.
The number of probes sent, without response before dropping the connection.
The amount of time in seconds the connection must be idle before sending keepalive probes.
The amount of time in seconds between keepalive probes.
Disables the Nagle algorithm when set to true, otherwise enables it.
© 2012–2026 Manas Technology Solutions.
Licensed under the Apache License, Version 2.0.
https://crystal-lang.org/api/1.19.0/TCPSocket.html