Как правильно закрыть приложение C #, которое создало несколько потоков?

Я пишу приложение с графическим интерфейсом.

Приложение открывает несколько потоков в течение своего времени жизни. Один из потоков обрабатывает события, которые могут поступать из других приложений, поэтому он ожидает в цикле while (true) для события, которое никогда не завершалось.

Пользователь может закрыть приложение в любую минуту. Я хочу закрыть все потоки, которые открыло основное приложение.

Я использую Process.GetCurrentProcess (). Kill (); чтобы разобраться с этой проблемой на данный момент.

Это хорошее решение? Если нет, то почему и как правильно решить эту проблему, как закрыть все потоки, открытые основным приложением?

14
задан Nate Kohl 15 October 2010 в 18:32
поделиться