Module: Async::IO::Server

Included in:
SSLServer, Socket, TCPServer
Defined in:
lib/async/io/server.rb

Instance Method Summary collapse

Instance Method Details

#accept_each(timeout: nil, task: Task.current) ⇒ Object



11
12
13
14
15
16
17
18
19
20
21
# File 'lib/async/io/server.rb', line 11

def accept_each(timeout: nil, task: Task.current)
	task.annotate "accepting connections #{self.local_address.inspect} [fd=#{self.fileno}]"
	
	callback = lambda do |io, address|
		yield io, address, task: task
	end
	
	while true
		self.accept(timeout: timeout, task: task, &callback)
	end
end