これは私のシナリオです:
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
ましょうか?またはより良い方法はありますか?