On Tuesday, 27 October 2020 at 22:14:53 UTC, Dukc wrote:
On Tuesday, 27 October 2020 at 15:16:33 UTC, Marcone wrote:
[...]

This is a bit heavyweight, but should be doable: have your primary process to start a watchdog process for itself. The watchdog continuosly sends messages to the primary process. If the message gets blocked or the watchdog receives no answer, it assumes the primary process has stopped working and thus terminates first plink.exe first and then itself.

In fact, while you're on it you can make the watchdog to terminate the primary process too, so the user won't have to kill the program manually in case of infinite loop.

In case of windows, the OS can take care of this with the JOB functions family: https://docs.microsoft.com/en-us/windows/win32/api/jobapi2/nf-jobapi2-assignprocesstojobobject

Reply via email to