Ожидание внутри потока - C#
Формулировка задачи:
Здравствуйте
Подскажите, как мне реализовать такой алгоритм
Я запускаю поток, в нём двойной цикл for
перед j++ происходят действия и необходимо ждать (окончания действия другого потока или к примеру получение значения true у bool переменной) и продолжить выполнение, но в следующем цикле так же ждать и пока полностью не закончится for.
То есть цикл не будет продолжаться пока не закончится //ждём выполнение потока, или true.
Sleep как вариант работает, но надо без него.
Надеюсь на вашу помощь.
for (int i = 0; i < 5; i++)
for (int j = 0; j < 5; j++)
{
//действие
//ждём выполнение потока, или true
}Решение задачи: «Ожидание внутри потока»
textual
Листинг программы
System.Threading.Thread waitThread = null;
static void directionUP()
{
for (int i = 0; i < 5; i++)
{
for (int j = 0; j < 5; j++)
{
Data.lineIsComplete = false;
Console.WriteLine("NEW CICLE - {0}", Data.lineIsComplete);
form_main.waitThread = new System.Threading.Thread(wait);
//действие
form_main.waitThread.Start();
form_main.waitThread.Join();
}
}
}
}
public static void wait()
{
do
{
Console.WriteLine("while - {0}", Data.lineIsComplete);
System.Threading.Thread.Sleep(1);
} while (Data.lineIsComplete != true);
Console.WriteLine("I can this make");
}