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
 
For 2021 - online Python 3 training - see ((here)).

Our plans were to retire in summer 2020 and see the world, but Coronavirus has lead us into a lot of lockdown programming in Python 3 and PHP 7.
We can now offer tailored online training - small groups, real tutors - works really well for groups of 4 to 14 delegates. Anywhere in the world; course language English.

Please ask about private 'maintenance' training for Python 2, Tcl, Perl, PHP, Lua, etc.
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., 2022: Well House Manor • 48 Spa Road • Melksham, Wiltshire • United Kingdom • SN12 7NY
PH: 01144 1225 708225 • FAX: 01144 1225 793803 • EMAIL: info@wellho.net • WEB: http://www.wellho.net • SKYPE: wellho