我有一个对象“守则”的列表:执行线程的列表
List<Code> listCodes = new List<Code>();
我需要执行一个线程列表内的每个代码,但我不知道该怎么做,因为我试着这样做:
foreach(Code c in listCodes)
{
Thread tr = new Thread(delegate() {
Execute(c.CodeLine);
});
}
这的foreach是一个计时器,因为这些代码会被执行所有的时间,但是当我做相同的代码被执行,即使第一次执行了很多次没有完成,如果代码需要5秒的时间来执行和完成,并且定时器是500ms,它将被执行例如,如果我在5秒后禁用定时器10次,例如。
我想不出什么来执行列表中的代码,每个代码在他们的线程中,但我想要执行代码0的线程(例如),只有当它在执行后完成。
谢谢。
计时器正在很丑陋。如前所述,没有理由,你也可以在线程内循环,并使用ManualResetEvent来停止循环。 – 2012-03-27 02:38:41