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分不够在加