Вы ожидаете, что сервер ответит клиенту "connection!", Это правильно?Если это так, ваша проблема в том, что #puts
перенаправляет свой вывод на STDOUT
при вызове на Kernel
.Если мы вызовем #puts
на клиентском TCPSocket
, он запишет вывод в TCPSocket
IO:
require 'socket'
server = TCPServer.open(3000)
loop{
puts "waiting for connection"
client = server.accept
client.puts "connection!"
client.close
puts "client closed"
}
И тогда конец клиента будет выглядеть так: