| 107 | |
| 108 | class WorkerThread(threading.Thread): |
| 109 | def __init__(self, worker_id: int, runner: "RunWorkers") -> None: |
| 110 | super().__init__() |
| 111 | self.worker_id = worker_id |
| 112 | self.runtests = runner.runtests |
| 113 | self.pending = runner.pending |
| 114 | self.output = runner.output |
| 115 | self.timeout = runner.worker_timeout |
| 116 | self.log = runner.log |
| 117 | self.test_name = _NOT_RUNNING |
| 118 | self.start_time = time.monotonic() |
| 119 | self._popen: subprocess.Popen[str] | None = None |
| 120 | self._killed = False |
| 121 | self._stopped = False |
| 122 | |
| 123 | def __repr__(self) -> str: |
| 124 | info = [f'WorkerThread #{self.worker_id}'] |