Шаблоны для делегирования работы нескольким потокам - PullRequest
3 голосов
/ 04 марта 2010

Я обновляю приложение WinForms, которое использует BackgroundWorker, чтобы делать что-то полезное при нажатии кнопки.

Проблема в том, что «что-то полезное» последовательно повторяется в длинном списке дел и может занять довольно много времени.

Я рассматриваю возможность создания события нажатия кнопки для создания нескольких BackgroundWorkers вместо одного или использования текущего BackgroundWorker для создания дополнительных BackgroundWorkers для выполнения фактической работы.

Оба подхода кажутся мне довольно эквивалентными.

Есть ли преимущества / недостатки одного из них? Есть ли лучший способ сделать это?

1 Ответ

1 голос
/ 04 марта 2010

Вы смотрели на использование фонового рабочего с Parallel.For? ( Parallel.For @ msdn )

Управление несколькими работниками может быть проблемой - вот что делают параллельные расширения ...

ПК: -)

...