diff options
Diffstat (limited to 'trunk/sample/tsvr.rb')
-rw-r--r-- | trunk/sample/tsvr.rb | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/trunk/sample/tsvr.rb b/trunk/sample/tsvr.rb new file mode 100644 index 0000000000..52cdd32dce --- /dev/null +++ b/trunk/sample/tsvr.rb @@ -0,0 +1,20 @@ +# socket example - server side using thread +# usage: ruby tsvr.rb + +require "socket" + +gs = TCPserver.open(0) +addr = gs.addr +addr.shift +printf("server is on %s\n", addr.join(":")) + +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 + end +end |