惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

T
Threat Research - Cisco Blogs
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
cs.AI updates on arXiv.org
cs.AI updates on arXiv.org
V
Vulnerabilities – Threatpost
GbyAI
GbyAI
P
Proofpoint News Feed
L
LINUX DO - 热门话题
P
Palo Alto Networks Blog
A
About on SuperTechFans
T
Tenable Blog
M
MIT News - Artificial intelligence
IT之家
IT之家
I
Intezer
D
DataBreaches.Net
爱范儿
爱范儿
T
Threatpost
C
CERT Recently Published Vulnerability Notes
云风的 BLOG
云风的 BLOG
博客园 - 三生石上(FineUI控件)
WordPress大学
WordPress大学
K
Kaspersky official blog
大猫的无限游戏
大猫的无限游戏
A
Arctic Wolf
Y
Y Combinator Blog
Cyberwarzone
Cyberwarzone
酷 壳 – CoolShell
酷 壳 – CoolShell
D
Darknet – Hacking Tools, Hacker News & Cyber Security
H
Help Net Security
Microsoft Security Blog
Microsoft Security Blog
Spread Privacy
Spread Privacy
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
AWS News Blog
AWS News Blog
博客园 - 聂微东
C
Check Point Blog
S
Securelist
有赞技术团队
有赞技术团队
雷峰网
雷峰网
aimingoo的专栏
aimingoo的专栏
Last Week in AI
Last Week in AI
Stack Overflow Blog
Stack Overflow Blog
MongoDB | Blog
MongoDB | Blog
D
Docker
G
GRAHAM CLULEY
T
The Exploit Database - CXSecurity.com
C
Cybersecurity and Infrastructure Security Agency CISA
T
Tailwind CSS Blog
L
Lohrmann on Cybersecurity
G
Google Developers Blog
C
Cyber Attacks, Cyber Crime and Cyber Security
L
LangChain Blog

博客园 - amber lee zhao

(武义检察院)sqlplus执行sql脚本 windows下squid安装与配置 缓存服务器 System.Data.OracleClient requires Oracle client software version 8.1.7 or greater. Oracle Listener crash in Windows 【转】Session丢失原因分析 【转】Session丢失问题二 【转】Session丢失问题解决方法一 OracleMembershipProvider、OracleRoleProvider源代码 使用EnterpriseLibrary插入Oracle CLOB数据 使用System.Net.Mail发送邮件 - amber lee zhao 【转】oracle SQL性能优化 DataGridView导出为Excel文件 - amber lee zhao 使用HtmlAgilityPack批量抓取网页数据 OracleMembershipProvider与登录控件使用的技巧 - amber lee zhao 结合OracleMembershipProvider开发简单的asp.net应用程序----配置web.config文件 C#版本的OracleMembershipProvider Double-Array Trie分词词典简述 [转] sharpICTCLAS 中在找出所有词组组合时的优化 .net下ICTCLAS原子分词和lucene的Token比较
在ASP.NET中使用Quartz.net进行工作调度
amber lee zhao · 2007-08-29 · via 博客园 - amber lee zhao

    <configSections>
        
<section name="quartz" type="System.Configuration.NameValueSectionHandler, System, Version=1.0.5000.0,Culture=neutral, PublicKeyToken=b77a5c561934e089"/>
        
<sectionGroup name="common">
            
<section name="logging" type="Common.Logging.ConfigurationSectionHandler, Common.Logging"/>
        
</sectionGroup>
    
</configSections>

    <common>
        
<logging>
            
<factoryAdapter type="Common.Logging.Simple.ConsoleOutLoggerFactoryAdapter, Common.Logging">
                
<arg key="showLogName" value="true"/>
                
<arg key="showDataTime" value="true"/>
                
<arg key="level" value="DEBUG"/>
                
<arg key="dateTimeFormat" value="HH:mm:ss:fff"/>
            
</factoryAdapter>
        
</logging>
    
</common>
    
<quartz>
        
<add key="quartz.scheduler.instanceName" value="ExampleDefaultQuartzScheduler"/>
        
<add key="quartz.threadPool.type" value="Quartz.Simpl.SimpleThreadPool, Quartz"/>
        
<add key="quartz.threadPool.threadCount" value="10"/>
        
<add key="quartz.threadPool.threadPriority" value="2"/>
        
<add key="quartz.jobStore.misfireThreshold" value="60000"/>
        
<add key="quartz.jobStore.type" value="Quartz.Simpl.RAMJobStore, Quartz"/>
    
</quartz>

另外我自己加了一个配置项:

<appSettings>
        
<add key="cronExpr" value="0 0 8-17/1 ? * 2-6"/>
    
</appSettings>

(2)创建一个普通类,实现Quartz.IJob接口

public class RetrieveAj2003T140Job : Quartz.IJob
{
    
private static DataView aj2003View;

    
public RetrieveAj2003T140Job()
    
{
        
//
        
// TODO: 在此处添加构造函数逻辑
        
//
    }


   

    
public void Execute(Quartz.JobExecutionContext context)
    
{
        
//throw new Exception("The method or operation is not implemented.");
        
//你的处理逻辑,也就是“工作”
    }

}

接口非常简单,只要在Execute()方法中进行逻辑处理就可以了。比如,读取数据库数据,或者是读取电子邮件。

(3)在Global.asax文件中启动工作调度
这便于我们在web应用启动时,就启动工作调度。

<%@ Import Namespace="Quartz" %>

<script runat="server">

    IScheduler sched;
    
void Application_Start(object sender, EventArgs e) 
    
{
        
// 在应用程序启动时运行的代码
        ISchedulerFactory sf = new Quartz.Impl.StdSchedulerFactory();
        sched 
= sf.GetScheduler();
        JobDetail job 
= new JobDetail("job1""group1"typeof(RetrieveAj2003T140Job));

        
string cronExpr = ConfigurationManager.AppSettings["cronExpr"];
        CronTrigger trigger 
= new CronTrigger("trigger1""group1""job1""group1",cronExpr);
        sched.AddJob(job, 
true);
        DateTime ft 
= sched.ScheduleJob(trigger);
        sched.Start();
        
    }

    
    
void Application_End(object sender, EventArgs e) 
    
{
        
//  在应用程序关闭时运行的代码
        if (sched != null)
        
{
            sched.Shutdown(
true);
        }

    }

        

       
</script>

需要注意的是,当Application_End的时候,需要关闭Quartz的工作。

OK了,可以在ASP.NET中正常使用了。