Нужно сделать чтобы в цикле работало не более 10-ти потоков - C#
Формулировка задачи:
Доброго времени.
Возник коллапс мыслительного процесса. Прошу помощи или совета...
Есть цикл foreach
в цикле запускается поток передающий данные в Write().
Мне нужно сделать что бы в цикле работало не более 10-ти потоков, естественно с разными
foreach (string s in P(allSumbols, o))
{
t = new Thread(delegate() { Write(s); });
t.Start();
}s
и при окончании одного из них открывался следующий/новый.. Заранее признателен!..Решение задачи: «Нужно сделать чтобы в цикле работало не более 10-ти потоков»
textual
Листинг программы
private const int nWorkerThreads = 10;
private const int nCompletionPortThreads = 10;
static void Main(string[] args)
{
ThreadPool.SetMaxThreads(nWorkerThreads, nCompletionPortThreads);
ThreadPool.QueueUserWorkItem(Display);
}
private void Display(object state)
{
for (int o = 2; o < leng; o++)
{
foreach (string s in P(allSumbols, o))
{
Console.WriteLine(s);
}
Console.ReadKey();
}
}