1.在Global.asax文件中导入命名空间
<%@ Import Namespace="System.Timers" %>
2.Global.asax文件中的Application_Start()方法内写如下代码:
System.Timers.Timer objTimer = new Timer();
objTimer.Interval = 时间; //这个时间单位毫秒,比如10秒,就写10000
objTimer.Enabled = true;
objTimer.Elapsed += new ElapsedEventHandler(objTimer_Elapsed);
3.Global.asax文件中添加一个方法
void objTimer_Elapsed(object sender, ElapsedEventArgs e)
{
//这个方法内实现你想做的事情。
//例如:修改Application的某一个值等等。
}
以上3步则可以在指定时间间隔执行这个objTimer_Elapsed()方法,即达到你要得效果
===================================================
using System;
using System.Timers;
namespace 定时器ConsoleApplication1
{
class Class1
{
[STAThread]
static void Main(string[] args)
{
System.Timers.Timer aTimer = new System.Timers.Timer();
aTimer.Elapsed += new ElapsedEventHandler(TimeEvent);
// 设置引发时间的时间间隔 此处设置为1秒(1000毫秒)
aTimer.Interval = 1000;
aTimer.Enabled = true;
Console.WriteLine("按回车键结束程序");
Console.WriteLine(" 等待程序的执行......");
Console.ReadLine();
}
// 当时间发生的时候需要进行的逻辑处理等
// 在这里仅仅是一种方式,可以实现这样的方式很多.
private static void TimeEvent(object source, ElapsedEventArgs e)
{
// 得到 hour minute second 如果等于某个值就开始执行某个程序。
int intHour = e.SignalTime.Hour;
int intMinute = e.SignalTime.Minute;
int intSecond = e.SignalTime.Second;
// 定制时间; 比如 在10:30 :00 的时候执行某个函数
int iHour = 10;
int iMinute = 30;
int iSecond = 00;
// 设置 每秒钟的开始执行一次
if( intSecond == iSecond )
{
Console.WriteLine("每秒钟的开始执行一次!");
}
// 设置 每个小时的30分钟开始执行
if( intMinute == iMinute && intSecond == iSecond )
{
Console.WriteLine("每个小时的30分钟开始执行一次!");
}
// 设置 每天的10:30:00开始执行程序
if( intHour == iHour && intMinute == iMinute && intSecond == iSecond )
{
Console.WriteLine("在每天10点30分开始执行!");
}
}
}
}
分享到:
相关推荐
② System.Timers.Timer ③ System.Threading.Timer 现分述如下: 一、System.Windows.Forms.Timer 1、基于Windows消息循环,用事件方式触发,在界面线程执行;是使用得比较多的Timer,Timer Start之后定时(按设定...
C#中的System.Timers.Timer定时器使用和定时自动清理内存应用 C#中的System.Timers.Timer定时器是一种常用的定时器组件,用于在指定时间间隔内触发事件。该组件广泛应用于各种场景,如定时更新数据、定时清理内存、...
在.NET框架中,`System.Timer`是用于在指定间隔执行代码的一个强大工具。这个类在`System.Threading`命名空间下,常被用来实现定时任务,比如定期检查数据库更新、发送邮件通知或者执行其他周期性操作。本文将深入...
在本文中,我们将深入探讨`System.Timers.Timer`的使用以及如何解决可能出现的重入问题。 首先,`System.Timers.Timer`是.NET框架提供的一种计时器类型,适用于多线程环境。它通过.NET Thread Pool工作,能够在指定...
System.Timers.Timer 定时执行程序 代码如下: System.Timers.Timer t = new System.Timers.Timer(5000); //设置时间间隔为5秒 private void Form1_Load(object sender, EventArgs e) { t.Elapsed += new System....
与 `System.Windows.Forms.Timer` 相比,`System.Timers.Timer` 更适用于长时间运行的应用程序,因为它可以在应用程序的主线程暂停或挂起时继续运行,提供更精确的时间间隔控制。 #### 三、`System.Timers.Timer` ...
在.NET框架中,C#提供了两种Timer类,用于在多线程环境中实现定时触发操作:System.Threading.Timer和System.Timers.Timer。这两种Timer虽然都与时间调度相关,但在使用上和特性上有所不同。在这个主题中,我们将...
总之,`System.Timers.Timer`是ASP.NET中实现后台定时任务的一个常见选择。通过设置间隔、绑定事件处理和定义任务执行逻辑,我们可以方便地创建定时任务。但需要注意,它可能不适用于所有情况,特别是当需要访问ASP...
- `System.Timers.Timer`: 这是另一种常见的定时器,主要用于基于事件的多线程环境。与`System.Threading.Timer`不同,它在`Elapsed`事件的调度中使用单个线程,更适合UI应用程序。 - `DateTime`和`Stopwatch`: 这些...
System.Timers.Timer timer = new System.Timers.Timer(); timer.Interval = 5000; // 每5秒触发一次 timer.Elapsed += new ElapsedEventHandler(OnTimedEvent); // 注册事件处理器 timer.Enabled = true; // 启动...
在.NET框架中,有三种主要的Timer类,它们分别是System.Threading.Timer、System.Timers.Timer和System.Windows.Forms.Timer。这三种Timer各有特点,适用于不同的场景。接下来我们将深入探讨它们的实现方式,以及...
本文将详细介绍在C#编程语言中三种不同的定时器实现方式:`System.Windows.Forms.Timer`、`System.Timers.Timer`以及`System.Threading.Timer`。这三种定时器各有特点,适用于不同场景。 #### 二、`System.Windows....
`System.Timers.Timer`在多线程环境下更易管理,因为`Elapsed`事件在单独的线程上执行,避免了阻塞UI。而`System.Threading.Timer`的回调是在ThreadPool线程上,这意味着多个Timer实例可以共享线程资源,提高效率。...
System.Timers.Timer pTimer = new System.Timers.Timer(5000);//每隔5秒执行一次,没用winfrom自带的 pTimer.Elapsed+=pTimer_Elapsed;//委托,要执行的方法 pTimer.AutoReset = true;//获取该定时器自动执行 ...
在C#编程语言中,`System.Timers.Timer` 和 `System.Threading.Timer` 是两种常见的定时器类,它们都用于在指定的时间间隔后执行特定的任务。本篇将详细讲解如何使用C#实现`Timer`定时器,以实现秒的自加功能。 ...
- `System.Timers.Timer`的`Elapsed`事件默认在单独的工作线程上运行,这使得它可以在不阻塞UI线程的情况下执行任务,这对于后台操作和非UI相关的任务很有用。 - 如果你需要在UI线程上执行操作,需要通过控制台或...
本示例项目“Timer_Test.rar”提供了三种不同类型的定时器的实现:System.Windows.Forms.Timer、System.Timers.Timer和System.Threading.Timer。每种定时器都有其特定的应用场景和特性,下面将详细介绍这三种定时器...