(self)
| 210 | self.conditions = [] |
| 211 | |
| 212 | def start(self): |
| 213 | self.reactor.start() |
| 214 | retry = 0 |
| 215 | if self.port == 0: |
| 216 | self.port = str(randint(49152, 65535)) |
| 217 | retry = 10 |
| 218 | while retry > 0: |
| 219 | try: |
| 220 | self.acceptor = self.reactor.acceptor(self.host, self.port) |
| 221 | break |
| 222 | except IOError: |
| 223 | self.port = str(randint(49152, 65535)) |
| 224 | retry -= 1 |
| 225 | assert retry > 0, "No free port for server to listen on!" |
| 226 | self.thread.start() |
| 227 | |
| 228 | def stop(self): |
| 229 | self.running = False |