Task内で使用するタイマーがTickしない。
.Net FrameWork 4.5 にて下記プログラム作成しました。
Taskで実行するとtimerはtimer_Tickにたどり着かず、
そのまま呼び出すとtimer_Tickに行きます。
両者の違いは何故発生するのでしょうか?
よろしくお願いします。
class a
{
Timer timer = new Timer();
public a()
{
timer.Tick += timer_Tick;
}
public void Start()
{
timer.Interval = 1000;
timer.Start();
}
void timer_Tick(object sender, EventArgs e)
{
return;
}
}
class main
{
public main()
{
a A = new a();
Task.Run(() => { A.Start(); }); //Tick しない。
A.Start(); //Tick する。
}
}