in src/Program.cs [247:264]
private static TimeoutCookie WithTimeoutCookie(int? timeoutMs, Action action = null)
{
if (timeoutMs == null) return default;
var source = new CancellationTokenSource();
var token = source.Token;
Task.Factory.StartNew(async () =>
{
await Task.Delay(timeoutMs.Value, token);
action?.Invoke();
await Console.Error.WriteLineAsync("Cannot capture stack trace from process: Timeout expired.");
Environment.Exit(2);
}, token);
return new TimeoutCookie(source);
}