C# 线程池 子线程进度条监控问题
代码如下:
ThreadPool.SetMaxThreads(groupMaxThreads, groupMaxThreads);//设置线程池排队最大值
Hashtable htpars = null;
for (int i = 0; i < Groupmax; i++) 遍历开启线程池
{
htpars = new Hashtable() ;
htpars["G"] = i + 1;
htpars["even"] = enevNum;
htpars["Yhindex"] = Yhstartindex;
ThreadPool.QueueUserWorkItem(new WaitCallback(insertdate), htpars); //
}
while (true) //循环检测子线程是否执行完毕
{
Thread.Sleep(10);//这句写着,主要是没必要循环那么多次。去掉也可以。
int maxWorkerThreads, workerThreads;
int portThreads;
ThreadPool.GetMaxThreads(out maxWorkerThreads, out portThreads);
ThreadPool.GetAvailableThreads(out workerThreads, out portThreads);
if (maxWorkerThreads - workerThreads == 0) //判断子程序有没有全部运行结束
{
break;
}
}
我该如何用progressBar来显示子线程完成的几个的百分比呢?这边百分比 percent= workerThreads /maxWorkerThreads 就可以我觉得,但是该如何用进度调空间显示出来呢,请各位大侠帮忙支招....