Nito.AsyncEx.PauseToken
A type that allows an operation to be cooperatively paused.
namespace Nito.AsyncEx
{
public struct PauseToken
{
public bool CanBePaused { get; }
public bool IsPaused { get; }
public Task WaitWhilePausedAsync();
public Task WaitWhilePausedAsync(CancellationToken token);
public void WaitWhilePaused();
public void WaitWhilePaused(CancellationToken token);
}
}