Training, Open Source computer languages
PerlPHPPythonMySQLApache / TomcatTclRubyJavaC and C++LinuxCSS 
Search for:
Home Accessibility Courses Diary The Mouth Forum Resources Site Map About Us Contact
 
20.9.2014 - We have just updated our course layouts and descriptions and added our 2015 schedule.

real_time_socket

Posted by tclinside (tclinside), 18 May 2006
Dear all;

 A couple of weeks I have posted these question :
http://www.wellho.net/forum/The-Tcl-programming-language/Tcl-socket-client.html
However, I still get the some probleme !

In fact i acquired serial data  from a cyberglove hardware.  I'm attempting to send those data, value by value,  to a TCL client.  Actually, the client print data when the buffer is filled but I want data be transmitted by server and received by client without waiting for the Buffer being filled. (send value by value). As suggest by Graham Ellis i have configurate  channel (by using fconfigure) as follow:

Code:
   ----------------------------------------------------
proc read_data {} {
       set sum 0
       set count 0
       set mask 0x5A
           
       set channel [socket localhost 9900]
       fconfigure $channel -translation binary -buffering line
       while 1 {
           set data [read $channel]
          flush($data)
           foreach item [split $data {}] {
               incr count
                   
               set value [scan $item %c]
             
              puts -nonewline $value
           }
           if {[eof $channel]} break
       }
       puts "\nSum is '[format %x $sum]'."
       return $count
   }
   read_data
  ---------------------------------------------------------

But i have allways the some probleme: the cleint wait the server loop to print data !!

 Is there a way to fix this probleme ?


Best regards



Posted by admin (Graham Ellis), 18 May 2006
My suggestion before was to use buffering none (that's what was in the example I pointed you to)), but I see you have used buffering line.  If you use buffering line, then the system will buffer until it happens upon a bit pattern that represents a new line character, or until the socket is closed.



This page is a thread posted to the opentalk forum at www.opentalk.org.uk and archived here for reference. To jump to the archive index please follow this link.

You can Add a comment or ranking to this page

© WELL HOUSE CONSULTANTS LTD., 2014: Well House Manor • 48 Spa Road • Melksham, Wiltshire • United Kingdom • SN12 7NY
PH: 01144 1225 708225 • FAX: 01144 1225 899360 • EMAIL: info@wellho.net • WEB: http://www.wellho.net • SKYPE: wellho