1 write to _options
aspire (1)
src\Shared\ChildProcess.cs (1)
54_options = options;
36 references to _options
aspire (36)
src\Shared\ChildProcess.cs (36)
122if (_options.Lifetime == ChildProcessLifetime.OwnedTree) 124_completionPath = _options.CompletionPath; 130startInfo = _options.CreateSupervisorStartInfo(_startInfo, _completionPath, _options.TerminationTimeout); 140if (_options.Detached) 168if (!_options.Detached && (startInfo.RedirectStandardOutput || startInfo.RedirectStandardError)) 328if (_options.RequestGracefulShutdownAsync is { } requestShutdown 329&& _options.BeginGracefulShutdown?.Invoke() is { } gracefulToken) 337_options.TerminationTimeout, _options.TimeProvider, CancellationToken.None).ConfigureAwait(false); 365&& _options.Lifetime == ChildProcessLifetime.AppHost 366&& !_options.KillEntireProcessTreeOnCancel; 369_options.TerminationTimeout, _options.TimeProvider, CancellationToken.None).ConfigureAwait(false); 376await signalTask.WaitAsync(_options.TerminationTimeout, _options.TimeProvider, CancellationToken.None).ConfigureAwait(false); 381FileName, _processId, _options.TerminationTimeout); 429await process.WaitForExitAsync().WaitAsync(_options.TerminationTimeout, _options.TimeProvider).ConfigureAwait(false); 433using var deadline = new CancellationTokenSource(_options.TerminationTimeout, _options.TimeProvider); 438await Task.Delay(TimeSpan.FromMilliseconds(25), _options.TimeProvider, deadline.Token).ConfigureAwait(false); 443throw new TimeoutException($"Process group {_processId} still exists after cleanup timeout {_options.TerminationTimeout}.", ex); 450FileName, _processId, _options.TerminationTimeout); 501var entireProcessTree = _options.KillEntireProcessTreeOnCancel; 574if (_options.Lifetime == ChildProcessLifetime.OwnedTree && !process.HasExited) 584await process.WaitForExitAsync().WaitAsync(_options.TerminationTimeout, _options.TimeProvider).ConfigureAwait(false); 589FileName, _processId, _options.TerminationTimeout); 615_options.StandardOutputCallback?.Invoke(line); 628_options.StandardErrorCallback?.Invoke(line); 660if (_options.TimeProvider.GetElapsedTime(Interlocked.Read(ref _lastActivityTimestamp)) >= _options.OutputDrainIdleTimeout) 663FileName, _processId, _options.OutputDrainIdleTimeout); 670await drained.WaitAsync(s_drainPollInterval, _options.TimeProvider, cancellationToken).ConfigureAwait(false); 687private void RecordActivity() => Interlocked.Exchange(ref _lastActivityTimestamp, _options.TimeProvider.GetTimestamp());