1
0
Fork 0
mirror of https://github.com/ruby/ruby.git synced 2022-11-09 12:17:21 -05:00
ruby--ruby/sample/tsvr.rb

24 lines
409 B
Ruby
Raw Normal View History

# socket example - server side using thread
# usage: ruby tsvr.rb
require "socket"
require "thread"
gs = TCPserver.open(0)
addr = gs.addr
addr.shift
printf("server is on %d\n", addr.join(":"))
while TRUE
ns = gs.accept
print(ns, " is accepted\n")
Thread.start do
s = ns # save to thread-local variable
while s.gets
s.write($_)
end
print(s, " is gone\n")
s.close
end
end