Commit 1a76783
committed
ControlModeEngine(threading): Non-daemon threads with explicit join
Change reader and stderr threads from daemon=True to daemon=False, with
explicit join() in close() method. This provides:
- Clean shutdown: threads complete gracefully instead of being orphaned
- No race conditions between close() and thread termination
- Deterministic lifecycle for debugging and testing
The 3 ScriptedProcess/ProcessFactory tests still fail - they require
Part 5 (ScriptedStdout queue-based iterator) to fix the tuple stdout
consumption race. The threading fix is still valuable for production
correctness.1 parent 944879d commit 1a76783
1 file changed
+14
-3
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
149 | 149 | | |
150 | 150 | | |
151 | 151 | | |
152 | | - | |
| 152 | + | |
| 153 | + | |
| 154 | + | |
| 155 | + | |
| 156 | + | |
153 | 157 | | |
154 | 158 | | |
155 | 159 | | |
| |||
165 | 169 | | |
166 | 170 | | |
167 | 171 | | |
| 172 | + | |
| 173 | + | |
| 174 | + | |
| 175 | + | |
| 176 | + | |
| 177 | + | |
168 | 178 | | |
169 | 179 | | |
170 | 180 | | |
| |||
481 | 491 | | |
482 | 492 | | |
483 | 493 | | |
| 494 | + | |
484 | 495 | | |
485 | 496 | | |
486 | 497 | | |
487 | 498 | | |
488 | | - | |
| 499 | + | |
489 | 500 | | |
490 | 501 | | |
491 | 502 | | |
492 | 503 | | |
493 | 504 | | |
494 | 505 | | |
495 | | - | |
| 506 | + | |
496 | 507 | | |
497 | 508 | | |
498 | 509 | | |
| |||
0 commit comments