Повторный запуск потоков - C#

Узнай цену своей работы

Формулировка задачи:

Добрый день всем. Необходима ваша помощь в следующем вопросе. Есть некий гипотетический код:
while (true)
 {
 Thread[] Thrd = new Thread[10];
 for (int i = 0; i < 10; i++)
 {
 Thrd[i] = new Thread(f);
 Thrd[i].Start();
 }
//здесь некий код, проверяющий состояние потоков и когда завершены то переходим к задержке ниже
System.Threading.Thread.Sleep(5000);
 }
Мне необходимо чтоб создавались потоки, затем, после завершения, выполнялась пауза и цикл бы начинал все заново. Но потоки не создаются, лишь первая итерация получается. Подскажите, пожалуйста, как реализовать мою задачу правильно?

Решение задачи: «Повторный запуск потоков»

textual
Листинг программы
public void CreateThreads(Object count1)
        {
            int count = (int)count1;   
            while (true)
            {
                var list = new List<Thread>(12);                             
                for (int i = 0; i < count; i++)
                {
                    var t = new Thread(func) {IsBackground = true};
                    list.Add(t);
                    t.Start();
                }
                list.ForEach(t => t.Join());
                Thread.Sleep(5000);
            }

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

10   голосов , оценка 4 из 5
Похожие ответы