protected System.Threading.Thread m_searchthread = null;
Вопрос: Я реализовал алгоритм поиска, который пользователь может запустить с веб-сайта ASP.NET.
Когда пользователь нажимает кнопку «Пуск», выполняется этот код:
m_searchthread = new System.Threading.Thread(new System.Threading.ThreadStart(Search));
m_searchthread.IsBackground = true;
m_searchthread.Start();
Теперь я хочу сделать возможным прерывание потока поиска. Итак, пользователь нажимает кнопку «Прервать», и этот код выполняется:
m_searchthread.Abort();
Теперь моя проблема: обратная передача кнопки прерывания сбрасывает m_searchthread в NULL...
Мне известно, что поток должен быть прерван с помощью флага. Основная проблема заключается в следующем: как остановить поток, если вы потеряли все переменные?