public static void AwaitState(ThreadState state, params ThreadClass[] threads)
{
while (true)
{
bool done = true;
foreach (ThreadClass thread in threads)
{
if (thread.State != state)
{
done = false;
break;
}
}
if (done)
{
return;
}
if (Random().NextBoolean())
{
Thread.@Yield();
}
else
{
Thread.Sleep(1);
}
}
}