2009年05月18日 System.Windows.Forms.Timerと、System.Threading.Timerの違い .NET Frameworkには、定期的にイベントを発生させるTimerというクラスが存在する。これを利用して、例えば「1秒毎にログファイルの監視をする」などの処理が簡単に実装できるようになっている。 ただ、このTimerクラスには、以下の2種類ある (1) System.Windows.Forms.Timerクラス (2) System.Threading.Timerクラス この違い(namespace名にも現れているが)、一定間隔のイベント発生先を、UIスレッドにするか、別スレッドを立てて行うかの違いである。 この違いを示すために、以下のようなプログラムを書いてみた。 サンプルアプリの画面 サンプルアプリソース using System; using Sy