Мое приложение имеет следующие поведения:дизайн (шаблон) для многопоточного приложения
- Вы можете загрузить удар файлов
- Вы можете начать измерение выбранных файлов
- Вы можете остановить измерение
Измерение само по себе длится очень долго, поскольку для этого используется внешнее оборудование. Длинные означает примерно 1 минуту в файле.
Для того, чтобы пользовательский интерфейс не замерзал, это измерение должно быть реализовано в отдельной задаче.
Но как реализовать метод safe
, чтобы остановить измерение и резьбу?
Я разработал аналогичное приложение в python. В этом я сам внедрил измерение как statemachine, тогда как каждое государство является собственным классом. Каждый переход состояния я проверяю, есть ли сигнал для остановки. Если это так, я перехожу в состояние Finish
и безопасно останавливаю измерение.
Как реализовать такое поведение с помощью C#
?
Ist это веб-приложение? – Siraf
Вы должны проверить [CancelationToken] (http://msdn.microsoft.com/en-us/library/dd997396.aspx). –
Как выполнить длительную операцию в приложении winform является * очень * распространенным вопросом, как правило, что-то связанное с ним задается здесь несколько раз в день. Вы должны сделать некоторые исследования по этому вопросу, поскольку информация широко доступна. – Servy