in src/Program.cs [149:170]
private static ThreadDumpParameters TryParseThreadDumpParameters(string[] args, int pid, string threadDumpDir)
{
var parameters = new ThreadDumpParameters(pid, threadDumpDir);
foreach (var arg in args)
{
if (TryParseFlag(arg, NoSuspend) && parameters.Suspend)
{
parameters.Suspend = false;
}
else if (TryParseTimeout(arg, out var timeoutMs) && parameters.TimeoutMs == null)
{
parameters.TimeoutMs = timeoutMs;
}
else if (TryParseFlag(arg, CreateSnapshotAndAttach) && !parameters.CreateSnapshotAndAttach && RuntimeInformation.IsOSPlatform(OSPlatform.Windows))
{
parameters.CreateSnapshotAndAttach = true;
}
else return null;
}
return parameters;
}