メソッドを特定の間隔(たとえば3秒)で一度呼び出すが、呼び出されたメソッド(たとえば、開始)からスローされた呼び出しメソッドtimer_Elapsed)フォアグラウンドスレッドの呼び出しメソッド内で子のバックグラウンドスレッドをキャッチ
更新
public void Start()
{
Timer timer = new Timer(PingPeriod); //System.Timers
try
{
timer.Elapsed += new ElapsedEventHandler(timer_Elapsed);
timer.Enabled = true;
}
catch (Exception ex)
{
//I want to catch exception thrown by timer_Elapsed
}
//Logic here that keeps the method running
}
private void timer_Elapsed(object sender, ElapsedEventArgs e)
{
throw new exception("Catch this exception please");
}
更新:
誰もが(という開始を確認してくださいことができますが)CATCません。例外が発生した場合はtimer_Elapsedを呼び出そうとしています。
呼び出されたメソッドから例外をキャッチしたり、通知を受け取ったりできる、より良い方法がありますか?
どのようなアイデアをいただければ幸いです。
どのタイマー? ... –
それはSystem.Timersです – Pingpong