module Socket::Server
Direct including types
Defined in:
socket/server.crInstance Method Summary
- #accept : IO
Accepts an incoming connection and returns the client socket.
- #accept(&)
Accepts an incoming connection and yields the client socket to the block.
- #accept? : IO?
Accepts an incoming connection and returns the client socket.
- #accept?(&)
Accepts an incoming connection and yields the client socket to the block.
Instance Method Detail
abstract def accept : IOSource
Accepts an incoming connection and returns the client socket.
require "socket" server = TCPServer.new(2202) while true socket = server.accept socket.puts Time.utc socket.close end
If the server is closed after invoking this method, an IO::Error
(closed stream) exception must be raised.
def accept(&)Source
Accepts an incoming connection and yields the client socket to the block. Eventually closes the connection when the block returns.
Returns the value of the block. If the server is closed after invoking this method, an IO::Error
(closed stream) exception will be raised.
require "socket" server = TCPServer.new(2202) server.accept do |socket| socket.puts Time.utc end
abstract def accept? : IO?Source
Accepts an incoming connection and returns the client socket.
Returns nil
if the server is closed after invoking this method.
require "socket" server = TCPServer.new(2202) while socket = server.accept? socket.puts Time.utc socket.close end
def accept?(&)Source
Accepts an incoming connection and yields the client socket to the block. Eventually closes the connection when the block returns.
Returns the value of the block or nil
if the server is closed after invoking this method.
require "socket" server = UNIXServer.new("/tmp/service.sock") server.accept? do |socket| socket.puts Time.utc end
© 2012–2021 Manas Technology Solutions.
Licensed under the Apache License, Version 2.0.
https://crystal-lang.org/api/1.2.1/Socket/Server.html