The "attach" command, which internally would be implemented as adding terminate observers, should be asynchronous. vis, something like: (hpd) attach PID (hpd) Process PID attached, observing terminate events. (hpd)