现有以下需求,请高手指点:
有个方法Method1(string str,int i),每次执行输入参数值不一样,执行一次可能0.1-5秒
要求程序每时每刻程序进程中都有10个线程在执行此方法,如果发现少于10个时马上启动一个新线程来补充,以记录在些方法10个并发时此方法所需的时间,同时界面显示,请问高手通过线程及代理如何最佳实现?谢谢!
有个方法Method1(string str,int i),每次执行输入参数值不一样,执行一次可能0.1-5秒
要求程序每时每刻程序进程中都有10个线程在执行此方法,如果发现少于10个时马上启动一个新线程来补充,以记录在些方法10个并发时此方法所需的时间,同时界面显示,请问高手通过线程及代理如何最佳实现?谢谢!
这行报错出下:
由于出现被放弃的 mutex,等待过程结束
{
public static void Main()
{
new Abc();
}
} class Abc
{
private int i; public Abc()
{
for (i = 0; i < 5; i++)
{
Thread t = new Thread(MyThread);
t.Name = "Thread " + i;
t.Start();
}
} public void MyThread()
{
try
{
Console.WriteLine(Thread.CurrentThread.Name + " =========");
Thread.Sleep(3000);
}
catch (Exception ee)
{ }
finally
{
i++; Thread t = new Thread(MyThread);
t.Name = "Thread " + i;
t.Start();
}
}
}// 你可以再finally 中给它再开一条线程啊。因为线程结束必须经过finally