參照文檔:https://docs.microsoft.com/zh-cn/dotnet/api/system.timers.timer?view=netframework-4.8
static void Main(string[] args)
{
Console.WriteLine(DateTime.Now.ToString());
SetTimeOut(2000, alert, "你好");
Thread.Sleep(20000);
Console.Read();
}
/// <summary>
/// 延遲處理
/// </summary>
/// <param name="interval">延時時間:毫秒</param>
/// <param name="action">調用方法</param>
/// <param name="hello">方法入參</param>
static void SetTimeOut(double interval,Action<string> action,string hello) {
System.Timers.Timer timer = new System.Timers.Timer();
timer.AutoReset = false;//是否只觸發一次
timer.Interval = interval;//時間間隔
//綁定匿名方法
timer.Elapsed += delegate (object sender, System.Timers.ElapsedEventArgs e)
{
timer.Enabled = false;//停用觸發
action(hello);
};
timer.Enabled = true;//啟用觸發
}
static void alert(string s)
{
Console.WriteLine($"{DateTime.Now.ToString()}--{s}");
}
以上信息僅用於學習交流,如有錯誤歡迎指正;大佬勿噴,謝謝;
