.NET 3.5 Многопоточность - PullRequest
1 голос
/ 02 апреля 2012

с использованием .NET 3.5.У меня есть функция, в которую я хочу сделать многопоточные вызовы.В настоящее время пользователь устанавливает максимальное количество потоков в приложении, и я раскручиваю их в цикле for с новым Thread (Run) .Start ().Функция Run находится в цикле while и выполняется до тех пор, пока для логического уровня класса не установлено значение false.

Что я хочу сделать, это разрешить пользователю изменять значение maxThread, когда приложение работает, когда оно возвращаетсязавершать процессы и заставлять приложение регулировать количество запущенных потоков.Есть ли какой-то менеджер потоков в .NET 3.5, который я могу использовать, или это будет моя собственная ситуация?Если бы это был мой собственный ролл, я был бы признателен за любые начальные идеи о том, как лучше всего это сделать.

Ответы [ 3 ]

1 голос
/ 02 апреля 2012

Посмотрите ThreadPool

, но это будет зависеть от того, как вы получаете значение maxthread.

1 голос
/ 02 апреля 2012

Есть ли какой-нибудь менеджер потоков в .NET 3.5

Да, вы можете использовать обратный порт Reactive Extensions библиотеки параллельных задач для .NET 3.5.

Я бы не беспокоился о динамическом управлении максимальным количеством потоков.Предполагается, что TPL справится со всем этим для вас.

1 голос
/ 02 апреля 2012

Я думаю, что простым пользовательским решением было бы управление значением maxThread из таблицы базы данных.Есть и другие более легкие подходы, такие как запись значения в текстовый файл / файл конфигурации и т. Д.

Удачи

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...