Posted to tcl by mjanssen at Fri May 08 12:55:25 GMT 2009view raw

  1. #!/usr/bin/tclsh8.6
  2. set listenport 9002
  3. socket -server accept_connection $listenport
  4. proc accept_connection {cid ip port} {
  5. puts "[clock milliseconds]: Incoming Connection from $ip:$port"
  6. fconfigure $cid -buffering line -encoding iso8859-1
  7. fileevent $cid readable "readdata $cid"
  8. }
  9. proc readdata {cid} {
  10. if {[gets $cid data] < 0} {
  11. puts "Socket closed by remote host."; close $cid; return
  12. }
  13. set start [clock milliseconds]
  14. puts "[clock milliseconds]: Incoming data: $data"
  15. puts $cid $data
  16. puts $cid $data
  17. puts $cid $data
  18. set end [clock milliseconds]
  19. puts "[clock milliseconds]: Data echoed in [expr {$end-$start}] ms"
  20. }
  21. vwait forever
  22.