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