Задачи C # 4.0 - создание подклассов или отображение дерева выполнения? - PullRequest
3 голосов
/ 04 октября 2010

Есть ли у вас какие-либо советы о том, как я могу визуализировать дерево задач?Я буду выполнять большой набор долгосрочных задач, каждая из которых имеет несколько дочерних задач, я хочу визуализировать выполнение выполнения для пользователя в идеале в виде дерева / DAG.Если возможно, я бы хотел использовать новую библиотеку параллельных задач

. Сначала я решил создать подкласс «Задача» и «Имя и описание», а затем попытаться выяснить, есть ли у Задача свойства, чтобы получить список дочерних задач.Затем я мог бы использовать GraphSharp.codeplex.com или что-то подобное (любое предпочтение?) Для визуализации дерева.

Есть идеи / советы?

Спасибо

Дэвид

1 Ответ

2 голосов
/ 04 октября 2010

Лично я бы не стал создавать подклассы Task (или Task<T>).Это может привести к тому, что TaskFactory не будет работать должным образом, но также может привести к потере гибкости или очень большого объема требуемой реализации для охвата всех функций.

Вместо этого я создал бы класс, который планирует и запускаетзадача для вас.Этот класс можно использовать для генерации всех ваших задач (даже просто возвращая задачу с помощью фабричного метода).Внутренне он может легко отслеживать вашу графическую информацию, использовать продолжения построенных задач для отслеживания событий завершения или сбоя и т. Д.

...