Остановка потоков - C#
Формулировка задачи:
Имеется консольное приложение, в котором запускается несколько потоков. Сделать так, чтобы при нажатии enter все потоки остановились. Желательно использовать ManualResetEvent
Решение задачи: «Остановка потоков»
textual
Листинг программы
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading;
namespace ConsoleApplication21
{
class Program
{
static void Main(string[] args)
{
Thread thr1 = new Thread(new ThreadStart(run));
Thread thr2 = new Thread(new ThreadStart(run));
Thread thr3 = new Thread(new ThreadStart(run));
thr1.Start();
thr2.Start();
thr3.Start();
Console.WriteLine("Потоки запущены!");
ConsoleKeyInfo info;
do
{
info = Console.ReadKey(true);
}
while (info.Key!=ConsoleKey.Enter);
thr1.Abort();
thr2.Abort();
thr3.Abort();
Console.WriteLine("Потоки остановлены!");
Console.Read();
}
static void run()
{
}
}
}