diff options
Diffstat (limited to 'sample/tsvr.rb')
| -rw-r--r-- | sample/tsvr.rb | 17 |
1 files changed, 7 insertions, 10 deletions
diff --git a/sample/tsvr.rb b/sample/tsvr.rb index fbc6545bb5..2fa6c87ef9 100644 --- a/sample/tsvr.rb +++ b/sample/tsvr.rb @@ -2,20 +2,17 @@ # usage: ruby tsvr.rb require "socket" -require "thread" -gs = TCPserver.open(0) +gs = TCPServer.open(0) addr = gs.addr addr.shift -printf("server is on %d\n", addr.join(":")) +printf("server is on %s\n", addr.join(":")) -while TRUE - ns = gs.accept - print(ns, " is accepted\n") - Thread.start do - s = ns # save to dynamic variable - while s.gets - s.write($_) +loop do + Thread.start(gs.accept) do |s| + print(s, " is accepted\n") + while line = s.gets + s.write(line) end print(s, " is gone\n") s.close |
