zoukankan
html css js c++ java
Global中使用线程隔时执行一项任务
在Global中使用线程隔时执行一项任务
GLOBAL中线程的应用(书中学习,整理了一下),以下是过5分钟删除一张表的记录
using
System;
using
System.Collections;
using
System.ComponentModel;
using
System.Web;
using
System.Web.SessionState;
using
DataBase;
using
System.Data.SqlClient;
using
System.Web.Security;
using
System.IO ;
using
System.Threading;
namespace
FreightCom
{
/**/
///
<summary>
///
Global 的摘要说明。
///
</summary>
public
class
Global : System.Web.HttpApplication
{
/**/
///
<summary>
///
必需的设计器变量。
///
</summary>
private
System.ComponentModel.IContainer components
=
null
;
private
OnLineUser ou
=
new
OnLineUser();
private
UserLoginInfo Login
=
new
UserLoginInfo();
public
Global()
{
InitializeComponent();
}
protected
void
Application_Start(Object sender, EventArgs e)
{
SchedulerAgent.StartAgent();
}
protected
void
Session_Start(Object sender, EventArgs e)
{
}
protected
void
Application_BeginRequest(Object sender, EventArgs e)
{
}
protected
void
Application_EndRequest(Object sender, EventArgs e)
{
}
protected
void
Application_AuthenticateRequest(Object sender, EventArgs e)
{
}
protected
void
Application_Error(Object sender, EventArgs e)
{
}
protected
void
Session_End(Object sender, EventArgs e)
{
}
protected
void
Application_End(Object sender, EventArgs e)
{
SchedulerAgent.Stop();
}
Web 窗体设计器生成的代码
#region
Web 窗体设计器生成的代码
/**/
///
<summary>
///
设计器支持所需的方法 - 不要使用代码编辑器修改
///
此方法的内容。
///
</summary>
private
void
InitializeComponent()
{
this
.components
=
new
System.ComponentModel.Container();
}
#endregion
}
public
interface
ISchedulerJob
{
void
Execute();
}
public
class
SchedulerConfiguration
{
private
int
sleepInterval;
private
ArrayList jobs
=
new
ArrayList();
public
int
SleepInterval
{
get
{
return
sleepInterval;}
}
public
ArrayList Jobs
{
get
{
return
jobs;}
}
public
SchedulerConfiguration(
int
newSleepInterval)
{
sleepInterval
=
newSleepInterval;
}
}
public
class
Scheduler
{
private
SchedulerConfiguration configuration
=
null
;
public
Scheduler(SchedulerConfiguration config)
{
configuration
=
config;
}
public
void
Start()
{
while
(
true
)
{
try
{
foreach
(ISchedulerJob job
in
configuration .Jobs)
{
job.Execute();
}
}
catch
{}
finally
{
Thread.Sleep(configuration.SleepInterval);
}
}
}
}
public
class
SchedulerAgent
{
private
static
System.Threading.Thread schedulerThread
=
null
;
public
static
void
StartAgent()
{
SchedulerConfiguration config
=
new
SchedulerConfiguration(
1000
*
300
);
//
设置时间,此处为5分钟
config.Jobs.Add(
new
AlertJob());
Scheduler scheduler
=
new
Scheduler(config);
System.Threading.ThreadStart myThreadStart
=
new
System.Threading.ThreadStart(scheduler.Start);
schedulerThread
=
new
System.Threading.Thread(myThreadStart);
schedulerThread.Start();
}
public
static
void
Stop()
{
if
(
null
!=
schedulerThread)
{
schedulerThread.Abort();
}
}
}
public
class
AlertJob:ISchedulerJob
{
private
OnLineUser ou
=
new
OnLineUser();
public
void
Execute()
{
ou.UserDelOnline();
//
一个删除的方法
}
}
}
查看全文
相关阅读:
使用Dynamics 365 Diagnostics 来检查网络链接
Dynamics 365 使用power apps 创建 Auto Number
Dynamics 365 多语言配置
在AAD 注册 API permission
python学习笔记20:序列
python学习笔记19:集合set
python学习笔记18:字典dict
python学习笔记17:列表list
python学习笔记16:正则表达式
python学习笔记15:通过字符串导入模块
原文地址:https://www.cnblogs.com/ghd258/p/253299.html
最新文章
函数基础
9.基本运算符
8.格式化输出
7.Python与用户交互
6.Python的内存管理机制
ES6 新特性
web前端知识点(JavaScript篇)
web前端知识点(VUE篇)
Promise内部实现原理
call,apply,bind的内部原理实现
热门文章
nuxtjs之前端持久登录态
微信小程序之组件生命周期
微信小程序之全局状态管理
npm run 同时执行多个命令
PowerApps 添加圆形图片
PowerApps Component 介绍
PowerApps Component Framework PCF 部署
PowerApps Component Framework PCF 初始化
怎样设置你的上级Manager 在office 365 中
在O365 Admin Portal 中添加Dynamics 365 用户
Copyright © 2011-2022 走看看