Тотальное завершение потока - C#
Формулировка задачи:
Уточните как завершить поток и работу метода полностью?
Я предполагал, что при вызове a.Aboat(); поток завешиваться полностью, по аналогу закрытия программы, но к сожалению это не так и при вызове a.Aboat(); function() с потоком продолжает спокойно работать.
Как убить поток полностью? В чём ошибка моего подхода?
Thread a = new Thread(function); a.IsBackground = true; a.Start(); Thread.sleep(100000); a.Aboat(); //a.Join(); void function() { test t = new test(); t.step += () => {}; t.step2 += () => {}; }
Решение задачи: «Тотальное завершение потока»
textual
Листинг программы
using System; using System.Net.Sockets; using System.Threading; namespace ConsoleApplication212 { class Program { static void Main() { var th = new Thread(DoSomething); th.Start(); Thread.Sleep(100);//дожидаемся старта потока th.Abort();//пытаемся остановить поток, но он не остановится } static void DoSomething() { var list = new TcpListener(3333); list.Start(); var tcp = list.AcceptTcpClient(); } } }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д