创建类:TimerTool.cs
namespace 命名空间
{
public class TimerTool
{
private static Dictionary timers = new Dictionary();
///
/// settimeout定时器
///
/// 触发事件
/// 触发间隔
///
public static string SetTimeout(Action action, double interval)
{
string timerId = System.Guid.NewGuid().ToString();
Timer timer = new Timer(interval);
timer.Elapsed += (object sender, ElapsedEventArgs e) =>
{
timer.Enabled = false;
action();
};
timer.Enabled = true;
timers.Add(timerId, timer);
return timerId;
}
///
/// 销毁定时器
///
/// 定时器id
public static void ClearTimeout(string timerId)
{
if (timers.ContainsKey(timerId))
{
var timer = timers[timerId];
//timer.Enabled = false;
timer.Close();
timers.Remove(timerId);
}
}
}
}
用的时候就可以直接调用它
public static string timerId = string.Empty; //定时器
timerId = TimerTool.SetTimeout(() =>
{
//你要延时的代码
}, 1000); //1000毫秒,可自设



