这是我的场景:
ClassA
{
Timer tmr = new Timer(1000);
void Start()
{
tmr.start();
}
void tmr_Elapsed(object sender, ElapsedEventArgs e)
{
//Do Something
if (myCondition==true)
{
//Do Something
tmr.Stop(); // Or Change Value of a Property! anything that shows it
//meets the condition.
}
}
}
Class WorkflowController
{
list<ClassA> allA=new list<ClassA>(){new A1,new A2, new A3}
void Start()
{
foreach(item in allA)
{
item.start()
}
}
}
问题:
现在我希望foreach loop
执行A1.Start()
并等到计时器满足条件(此时x>50
和 50 秒后)并停止。然后执行A2.Start()
并等待计时器满足条件并再次停止。然后执行A3.Start()
等等。控制我的应用程序的WorkFlowController
工作流程。我不知道做这件事的简单方法是什么。我要利用INotifyPropertyChanged
吗?我应该使用Eventhandler
吗?或者,还有更好的方法?