private static void ProcessNotification(ref ChildExitNotification notification) { if (!UnixChildProcessState.TryGetChildProcessState(notification.Token, out var holder)) { return; } using (holder) { if (holder.State.HasExitCode) { Trace.WriteLine("warning: Multiple ChildExitNotification delivered to one process."); } else { // TODO: Status may be a signal number. holder.State.SetExited(notification.Status); } } }
private static void ProcessNotification(ref ChildExitNotification notification) { if (!UnixChildProcessState.TryGetChildProcessState(notification.Token, out var holder)) { // Ignore. This is a process where exec failed and we already reported that failure. return; } using (holder) { if (holder.State.HasExitCode) { Trace.WriteLine("warning: Multiple ChildExitNotification delivered to one process."); } else { // TODO: Status may be a signal number. holder.State.SetExited(notification.Status); } } }