Skip to content

Instantly share code, notes, and snippets.

@NickStrupat
Last active January 14, 2021 03:18
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save NickStrupat/0c68708a14ecdf366702f111a2f62020 to your computer and use it in GitHub Desktop.
Save NickStrupat/0c68708a14ecdf366702f111a2f62020 to your computer and use it in GitHub Desktop.
using System;
using System.Threading;
static class AsyncProgram
{
private static readonly CancellationTokenSource cts = new CancellationTokenSource();
public static CancellationToken CancellationToken => cts.Token;
static AsyncProgram()
{
Console.CancelKeyPress += EventHandler;
AppDomain.CurrentDomain.ProcessExit += EventHandler;
static void EventHandler(Object? sender, EventArgs e)
{
if (cts.IsCancellationRequested)
return;
cts.Cancel();
}
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment