В Eclipse я видел реализацию IProgressMonitor - которая впоследствии тоже в SharpDevelop, но я не уверен, как это работает. Есть ли пример этого в другом месте, который может быть немного легче понять?
То, чего я пытаюсь добиться, - это метод отслеживания хода выполнения группы задач (которые сильно варьируются от 20 минут до 5 секунд) по одной панели прогресса (задачи можно добавлять в любой момент времени).
Будет ли что-то подобное хорошей альтернативой / идеей?
interface ITask
{
int TotalWork; // ProgressMax
event Progresschanged; // Notifies of the current progress
event ProgressComplete;
}
Тогда «Монитор» просто использует шаблон Observer для мониторинга двух событий. Когда все индикаторы выполнения завершены, он будет скрывать индикатор выполнения. Другая проблема заключается в том, что это отдельные потоки, которые создаются.
Может ли кто-нибудь дать мне совет или привести меня на правильный путь?