У меня есть стилистический вопрос о выборе реализации фонового потока, который я должен использовать в приложении Windows Form. В настоящее время у меня есть BackgroundWorker
форма, которая имеет бесконечный (while(true))
цикл. В этом цикле я использую, WaitHandle.WaitAny
чтобы поток дремал, пока не произойдет что-то интересное. Один из дескрипторов события, на котором я жду, - это StopThread
событие " ", чтобы я мог выйти из цикла. Это событие сигнализируется когда от меня переопределяют Form.Dispose()
.
Я читал где-то, что BackgroundWorker
действительно предназначено для операций, с которыми вы не хотите связывать пользовательский интерфейс и которые имеют конечную цель - например, загрузка файла или обработка последовательности элементов. В этом случае «конец» неизвестен и только тогда, когда окно закрыто. Поэтому для меня было бы более уместным использовать фоновый поток вместо BackgroundWorker
этой цели?