mirror of
https://github.com/ruby/ruby.git
synced 2022-11-09 12:17:21 -05:00
210367ec88
which included commits to RCS files with non-trunk default branches. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@373 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
23 lines
409 B
Ruby
23 lines
409 B
Ruby
# 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
|