ДД. всем. интересует вопрос по многопоточности в .net (C# в частности).
я реализую .net forms (GUI) приложение, в котором при старте формы стартует поток, в котором происходит чего-то там выполнение, при том в цикле. метод, выполняемый в отдельном потоке так же является методом формы.
Хочу, чтобы при изменении итерации в этом отдельном потоке на форме изменялось значение прогрессбара.
Кроме того, хочу, чтобы при нажатии какой-то кнопки на форме поток прерывался (грамотно, т.е. не абы-где, а после окончания итерации). Для этого я делаю следующее:
я добавляю в форму булевский флажок, выставляю его в false. ПРи нажатии кнопки я взвожу этот флажок, значение которого проверяется в цикле потока перед выполнением очередной итерации. из этого же потока я напрямую меняю значение прогрессбара с выполнением очередной итерации. так вот вопрос: надо ли использовать что-то типа критических секций или что-то еще для обращения и изменения этого флажка и надо ли использовать критич. секции для обновления значения прогрессбара?