Professional Documents
Culture Documents
3.1 TaskProgramming_02CancellingTasks.txt
3.1 TaskProgramming_02CancellingTasks.txt
using System.Runtime.InteropServices;
using System.Threading;
using System.Threading.Tasks;
namespace IntroducingTasks
{
class CancelingTasks
{
static void Main(string[] args)
{
CancelableTasks();
MonitoringCancelation();
CompositeCancelationToken();
Console.ReadKey();
cts.Cancel();
}
Task.Factory.StartNew(() =>
{
int i = 0;
while (true)
{
paranoid.Token.ThrowIfCancellationRequested();
Console.Write($"{i++}\t");
Thread.Sleep(100);
}
}, paranoid.Token);
Console.ReadKey();
Console.ReadKey();
cts.Cancel();
Console.ReadKey();
cts.Cancel();
Console.WriteLine("Task has been canceled.");
}
}
}