首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> C語言 >> 關於C語言

.NET 定時器使用實例詳解(一):System.Windows.Forms.Timer 單執行緒 UI 定時器最簡單用法

     編輯:關於C語言

三種定時器快速對照

定時器執行緒模型依賴 UI適用場景
System.Windows.Forms.Timer單執行緒 (UI 執行緒)是簡單 UI 週期性更新
System.Timers.Timer多執行緒否伺服器端、精確間隔
System.Threading.Timer執行緒池否高頻、輕量背景工作

System.Windows.Forms.Timer 完整範例

public partial class Form1 : Form
{
    System.Windows.Forms.Timer t;

    private void Form1_Load(object sender, EventArgs e)
    {
        t = new System.Windows.Forms.Timer();
        t.Interval = 2000;        // 2 秒
        t.Enabled = true;
        t.Tick += timersTimer_Elapsed;
        t.Start();
    }

    private void timersTimer_Elapsed(object sender, EventArgs e)
    {
        DataSet ds = new DataSet();
        using (var sda = new SqlDataAdapter("select * from sysobjects order by newid()", "server=.;uid=sa;pwd=sa;database=master;"))
            sda.Fill(ds);

        dataGridView1.DataSource = ds.Tables[0].DefaultView;
        // 直接操作 UI,無需 Invoke
    }
}

最簡單、最安全,適合 WinForms 簡單週期性資料重整。缺點:間隔精度受 UI 執行緒忙碌度影響,長時間運算會阻塞介面。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved