Hi, I'am writing a program to cotrol a machine. I use socket comunication (TCP) to do it. I do a measurement in my machine like this:
def DoMeasurement(): setup1() setup2() while MeasurementNotFinished(): move() measure() finalizeMeasurement() Each funciton setup1, setup2, move,mesure, ... call a method in a class that contains a socket that do the comunication staff class DiSock(socekt): self.sock = socket.socket(socket.AF_INET, socket.SOCK_DGRAM) def comunicate(self): self.sock.sendall(Request.struct2string()) msg = '' MSGLEN = 608 while len(msg) < MSGLEN: chunk = self.sock.recv(MSGLEN-len(msg)) if chunk == '': raise RuntimeError,"socket connection broken" msg = msg + chunk data = msg Answer.string2struct(data) Request and Anser are objects in where i put the information i whant to send and recive from the machine. All the measurement is done in a new thread. The problem is that sometimes i loose the conenction whith the machines. In the case a ConnectionFailure exception is raised. How can i do resume the Measurement when the conection is resumed? Can i use a yield for this? Thanks in advance Zunbeltz -- http://mail.python.org/mailman/listinfo/python-list