| ▲ | Joker_vD 6 hours ago | |||||||
> I'd say that any process that calls `setsid` is responsible for ensuring signal propagation across the pgid. How?! After a process calls setsid(2), it becomes a leader of a new process group so it stops receiving signals from its former process group! > But that would have been nice to actually have nestable job management. Yes, it would be. Just imagine: a simple, straightforward way to group a bunch of processes (and their potential children, inescapably), signal them all at once, wait for them all at once, etc. Instead, we at best ended up with docker compose and k8s. And they kinda do solve that problem, no question about that but it's just so incredibly heavyweight... | ||||||||
| ▲ | MereInterest 5 hours ago | parent [-] | |||||||
> How?! After a process calls setsid(2), it becomes a leader of a new process group so it stops receiving signals from its former process group! By limiting its usage to the period between fork and exec, so that the process calling setsid knows that the parent process is propagating signals to it. So, my phrasing was inaccurate to the point of being entirely incorrect. I should have said that any process that calls `setsid` is responsible for ensuring that signals are being propagated. (And saved! Definitely didn't make a mistake on the internet and then play it like I was right all along.) | ||||||||
| ||||||||