c#定时调用作业
1.在Global.asax文件中添加启动线程
protected void Application_Start(object sender, EventArgs e)
{ Thread ThService = new Thread(new ThreadStart(Web.Common.ThConService_Control.Instance().Start));
ThService.Start(); }
2.创建ThConService_Control.cs文件。
namespace Web.Common
{
public class ThConService_Control
{
#region Timer 计时器定义
/// <summary>
/// 时间间隔,10*(60秒)10分钟
/// </summary>
private static int Interval = * * ;//saitor
private long Times=;
private Timer WebTimerObj = null;
/// <summary>
/// 是否正在执行中
/// </summary>
private int _IsRunning; /// <summary>
/// 实例化一个对象
/// </summary>
private static readonly ThConService_Control _WebTimerTask = null; /// <summary>
///
/// </summary>
static ThConService_Control()
{
_WebTimerTask = new ThConService_Control();
} /// <summary>
/// 实例化
/// </summary>
/// <returns></returns>
public static ThConService_Control Instance()
{
return _WebTimerTask;
} /// <summary>
/// 开始
/// </summary>
public void Start()
{
if (WebTimerObj == null)
{
WebTimerObj = new Timer(new TimerCallback(WebTimer_Callback), null, Interval, Interval);
}
}
/// <summary>
/// 停止
/// </summary>
public void Stop()
{
if (WebTimerObj != null)
{
WebTimerObj.Dispose();
WebTimerObj = null;
}
}
/// <summary>
/// WebTimer的主函数
/// </summary>
/// <param name="sender"></param>
private void WebTimer_Callback(object sender)
{
try
{
if (Interlocked.Exchange(ref _IsRunning, ) == )
{
ExecuteMain();
Times++;
Times = (Times % );
}
}
catch
{ }
finally
{
Interlocked.Exchange(ref _IsRunning, );
}
} #endregion #region 实际执行的方法 public List<LiEntity> Lst = new List<LiEntity>();
BL Bll = new BL();
BLLogs objManage_Log = new BLLogs();
public Object SyncObj = new Object(); /// <summary>
/// 实际执行的方法
/// </summary>
private void ExecuteMain()
{ if (Lst.Count > )
{
lock (SyncObj)
{
while (Lst.Count > )
{
//对队列数据进行处理
}
}
}
}
#endregion
}
}
c#定时调用作业的更多相关文章
- Spring结合Quartz实现多任务定时调用(转载)
Quartz框架提供了丰富的任务调度支持,比如,在 何时执行何种任务,它是一个开源的由OpenSymphony维护的项目,开发者能够在Java EE,或单独的Java SE应用中使用它.无论是简单的任 ...
- Quartz结合SPRING多任务定时调用
定义两个被调度的类 public class QuartzJob { public void work() { System.out.println(Spring Quartz的任务调度1被调用!&q ...
- java Timer(定时调用、实现固定时间执行)
最近需要用到定时调用的功能.可以通过java的Timer类来进行定时调用,下面是有关Timer的一些相关知识. 其实就Timer来讲就是一个调度器,而TimerTask呢只是一个实现了run方法的一个 ...
- ASP.NET定时调用WebService 运行后台代码
效果: 通过在网站的Global.asax的Application_Start方法中 加入定时器 定时调用WebService 该WebService的一个方法 负责在后台 向数据库的某个表加入数据 ...
- js实现定时调用的函数setInterval()
setInterval是一个实现定时调用的函数,可按照指定的周期(以毫秒计)来调用函数或计算表达式.setInterval方法会不停地调用函数,直到 clearInterval被调用或窗口被关闭 定义 ...
- C#使用windows服务定时调用api接口
使用VS创建windows服务项目: 创建好项目 会出现一个设计界面 右键弹出对话框 选择添加安装程序 名字什么的自己可以改: 项目目录: 打开项目中的ProjectInstaller.Design ...
- MySql创建存储过程,并使用事件定时调用
一.使用命令行创建存储过程的步骤 :参数详情参考 https://www.mysqlzh.com/ 1.模板 delimiter $$ # 设置分隔符为 '$$' ,mysql默认的语句分隔符为 ' ...
- mssql定时执行作业。
---2000 企业管理器 --管理 --SQL Server代理 --右键作业 --新建作业 --"常规"项中输入作业名称 --"步骤"项 --新建 --&q ...
- Kettle配合Windows执行计划实现定时实行作业
一般作业做好后需要做成定时任务,Kettle可以借助Windows的执行计划来完成.那么可以通过写批处理的方式让执行计划来调用. 其中Kitchen和Pan都可以做定时执行,一个是针对作业,一个是针对 ...
随机推荐
- QQ欢乐斗地主心得体会 (三):高倍场攻略
上个月,也可能是上个月的上个月,我的欢乐豆兵积攒到了百万之众,突破了历史记录.最近2个月一直在高倍场混,想写点高倍场的心得体会.本篇的体会,与以前写的2篇斗地主心得体会,有点不同. 特别说明:我主要玩 ...
- JVM源码系列:ThreadMXBean 打出堆栈信息原理分析
我们通常会使用工具jstack 去跟踪线程信息,其如何实现使用attach 的方式还是ptrace 的方式,这些可以去参考本人的博客的其他文章. 但这些方式都是外部使用的方式,如何直接使用java代码 ...
- Web开发标配--开发人员工具-JS调试
喜欢从业的专注,七分学习的态度. JS:全称JavaScript,Web中,js主要在两个地方: html的<script type="text/javascript"> ...
- 检索 04 --Stack栈 Queue队列 Hashtable哈希表
//Stack 先进后出 没有索引 Stack st = new Stack(); st.Push(12); st.Push(11); st.Push(22); st.Push(34); st.Pus ...
- Android核心功能开发SearchView使用的开发(代码共享)
在Android上.搜索是一个核心的用户功能.用户可以搜索可用的任何数据,的内容是否存储在设备本身或者需要促进网络接入上.Android它提供了一个框架,为用户创造一个一致的搜索的搜索体验,它可以帮你 ...
- android studio报错提示: Gradle DSL method not found: 'android() 解决方案
原文错误提示: Error:(16, 0) Gradle DSL method not found: 'Android()'Possible causes:<ul><li>Th ...
- padding百分百值是相对谁的百分比
先看代码 <head> <meta charset="UTF-8"> <title>Document</title> <sty ...
- droid开发中监听器的三种实现方法(OnClickListener)
Android开发中监听器的实现有三种方法,对于初学者来说,能够很好地理解这三种方法,将能更好地增进自己对android中监听器的理解. 一.什么是监听器. 监听器是一个存在于View类下的接口,一般 ...
- 链接hdf5库出现错误的解决办法
作者:朱金灿 来源:http://blog.csdn.net/clever101 在链接hdf5库出现一些链接错误: error LNK2001: 无法解析的外部符号 _H5T_NATIVE_DOUB ...
- windows 10 使用 tricks
全新的环境变量编辑界面, 全新的[任务管理器]⇒ [性能] 0. 添加开机启动项 将要添加的开机自启动软件的快捷方式添加到如下的路径: C:\Users\hasee\AppData\Roaming\M ...