(self)
| 23 | self.msg_queue = msg_queue |
| 24 | |
| 25 | def run(self): |
| 26 | try: |
| 27 | logger.debug("EReader thread started") |
| 28 | buf = b"" |
| 29 | while self.conn.isConnected(): |
| 30 | data = self.conn.recvMsg() |
| 31 | logger.debug("reader loop, recvd size %d", len(data)) |
| 32 | buf += data |
| 33 | |
| 34 | while len(buf) > 0: |
| 35 | (size, msg, buf) = comm.read_msg(buf) |
| 36 | # logger.debug("resp %s", buf.decode('ascii')) |
| 37 | logger.debug( |
| 38 | "size:%d msg.size:%d msg:|%s| buf:%s|", size, len(msg), buf, "|" |
| 39 | ) |
| 40 | |
| 41 | if msg: |
| 42 | self.msg_queue.put(msg) |
| 43 | else: |
| 44 | logger.debug("more incoming packet(s) are needed ") |
| 45 | break |
| 46 | |
| 47 | logger.debug("EReader thread finished") |
| 48 | except: |
| 49 | logger.exception("unhandled exception in EReader thread") |
no test coverage detected