线程问题,急!急!急!急!急!急!急!急!急!急!急!急!急!急!急!急!急!急!

Ice_wang 2008-03-29 02:48:32
Check ch = new Check();//这个类是专用来传入到线程中的参数
ch.Money = 3000;
ch.Count = 5;
int count = 10;
Thread [] th = new Thread[count];
for (int j = 0; j < threadcount; j++)
{
th[j] = new Thread(new ParameterizedThreadStart(logcheck));
}
for(int i =0,j=0;i< list.count;i++,j++)
{
string a = list[i].sSectCode.toString();
string b = list[i].sAreaCode.toString();
//这两个参数每个线程都不一样
ch.sSectCode = a;
ch.sAreaCode = b;

th[j].Start(ch);//传送参数


if (j == threadcount - 1)//如果线程启动完成,那么我们将线程数组中的j重新置为0
{
j = 0;
j--;
}
//问题是,我如何判断每一个线程是否完成,然后将完成的线程进行到下将参数改变再次启动。如果线程达到最大时,必须停止
//循环,只有当其中任何一个线程执行完成了,然后把执行完的线程赋上不同的参数,再次启动,直到完成。
}

先给100分。。。不够在加。。。
...全文
62 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
csharp_start 2008-03-29
  • 打赏
  • 举报
回复
判断状态,如果使用类的某个方法来做委托,那么也可以使用一个属性来反映线程执行完毕.
yilanwuyu123 2008-03-29
  • 打赏
  • 举报
回复
楼主应该循环判断每个线程此时的状态 .Running || .suspend

110,545

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧