Я пишу приложение Windows Forms с интенсивным использованием BackgroundWorkers, и меня беспокоит один вопрос. Вот примерная ситуация:
- BackgroundWorker выполняет трудоемкие операции.
- Пока BackgroundWorker все еще работает, пользователь нажимает кнопку в форме.
- Обработчик события Button.Click начинает свое выполнение, завершает некоторые операторы, но их больше.
- В этот момент BackgroundWorker завершает свою задачу или вызывает исключение, поэтому управление должно перейти к обработчику событий BackgroundWorker.RunWorkerCompleted.
Что ж, мой вопрос: есть ли возможность для обработчика событий BackgroundWorker.RunWorkerCompleted прервать выполнение обработчика событий Button.Click?