Example:
auto stream = processEventStream();
// Process events as they occur
foreach (event; stream) {
final switch (event.type) {
case ProcessEventType.CREATED:
writeln("Process created: ", event.pid);
break;
case ProcessEventType.TERMINATED:
writeln("Process terminated: ", event.pid);
break;
case ProcessEventType.STATUS_CHANGED:
writeln("Process status changed: ", event.pid);
break;
}
if (someCondition) {
stream.stop();
break;
}
}