函数目的:控制当前线程等待直到指定线程集合全部终止。
void WaitTilOthersEnd(Thread [] arr)
{
bool bOtherAlive = true;
while(bOtherAlive )
{
bOtherAlive = false;
for (index = 0; index < arr.Length; index++)
{
bChildThAlive = arr[index].IsAlive || bChildThAlive;
}
Thread.Sleep(0);
}
}
{
bool bOtherAlive = true;
while(bOtherAlive )
{
bOtherAlive = false;
for (index = 0; index < arr.Length; index++)
{
bChildThAlive = arr[index].IsAlive || bChildThAlive;
}
Thread.Sleep(0);
}
}
这样一来,只要调用了该函数。那么当前函数在指定线程集的所有线程终止之前是不会继续下面的动作的。虽然是个很简单的方法,不过我在实践中经常用到它,感觉还算有用,所以在这里做个笔记。也希望今后还能从性能的角度对它做进一步的修改。
没有评论:
发表评论