Commit 570c92f
authored
Support Windows
Extend the `toProcessGroup` parameter added to `TeardownStep` in #243
to Windows. Previously, the final `kill` step on Windows ignored the
parameter and only terminated the immediate child, leaving descendants
alive even when the user had configured the sequence for process-group
teardown.
Windows has no direct process-group equivalent, but Job Objects
provide a similar grouping mechanism. Each spawned child is now assigned
to a Job Object at spawn time, and termination can target either the
immediate child or the entire job. Job assignment uses `CREATE_SUSPENDED`
to ensure no user code runs in the child between process creation and
job assignment.toProcessGroup teardown (#260)1 parent 2841129 commit 570c92f
5 files changed
Lines changed: 681 additions & 109 deletions
File tree
- Sources/Subprocess
- Platforms
- Tests/SubprocessTests
0 commit comments