# server.rb require 'socket' port = 3456 # ポート番号 clients = 2 # 必要クライアント数 ss = TCPServer.open(port) print "waiting for ",clients," clients\n" csocks = [] clients.times{ csocks << ss.accept } puts "all accepted" while csocks != [] do inputs = IO.select(csocks) if inputs != nil cs = inputs[0][0] if cs.eof? csocks -= [cs] cs.close else msg = cs.gets.chomp csocks.each{|csi| csi.puts msg # すべてに送ってよい } end end end ss.close