
ulrich.eckhardt at dominolaser
Aug 13, 2012, 12:15 AM
Post #8 of 8
(116 views)
Permalink
|
Am 10.08.2012 15:01, schrieb loial: > I am writing an application to send data to a printer port(9100) and > then recieve PJL responses back on that port. Because of the way PJL > works I have to do both in the same process(script). If I understand that right, you are opening a TCP connection, so obviously this must be done in the same process, regardless of what PJL (whatever that exactly is) does. > At the moment I do not start to read responses until the data has > been sent to the printer. However it seems I am missing some > responses from the printer whilst sending the data, so I need to be > able to do the 2 things at the same time. Using TCP, that shouldn't happen, so I really wonder what exactly you are doing here. > Can I open a port once and then use 2 different threads, one to write > to the post and one to read the responses)? Yes, definitely, take a look at the select() function of the select module. This basically looks like this: (r, w, x) = select(...) if r: # read and handle incoming data ... if w: # write pending output data ... if x: # handle connection failure ... If all this is not what you are doing and what you want (which I'm not 100% sure of) then please elaborate a bit what you're doing and what kind of connection you are using. Happy hacking! Uli -- http://mail.python.org/mailman/listinfo/python-list
|