Я бы использовал общесистемную EventWaitHandle
для этого.Затем родительское приложение может ожидать, пока дочерний процесс не сообщит об этом событии.
Оба процесса создают именованное событие, а затем один ожидает его передачи.
// I'd probably use a GUID for the system-wide name to
// ensure uniqueness. Just make sure both the parent
// and child process know the GUID.
var handle = new EventWaitHandle(
false,
EventResetMode.AutoReset,
"MySystemWideUniqueName");
Пока дочерний процесспросто сообщит о событии, вызвав handle.Set()
, родительский процесс ожидает его установки с использованием одного из методов WaitOne
.