国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學(xué)院 > 開發(fā)設(shè)計(jì) > 正文

一個(gè)簡(jiǎn)單的定時(shí)小程序

2019-11-14 13:38:43
字體:
供稿:網(wǎng)友

之前一直覺得定時(shí)程序好神秘,后來,當(dāng)我自己真正寫了一個(gè)小的定時(shí)程序時(shí),發(fā)現(xiàn)其實(shí)沒有想象中的那么難。下面,我分享一下我自己的操作過程,希望能對(duì)大家有幫助。

1)在我們的項(xiàng)目中添加引用文件:TaskSchedulerEngine.dll(dll定義了一個(gè)ITask接口,定義了兩個(gè)方法Initialize和HandleConditionsMetEvent);

2)創(chuàng)建一個(gè)定時(shí)觸發(fā)的類:SyncTask.cs(類名自己隨便定義),該類必須實(shí)現(xiàn)接口 ITask。具體代碼如下:

復(fù)制代碼
public class SyncTask : ITask{  //接受傳遞過來的參數(shù)的變量  PRivate string configName;      /// <summary>  /// 具體操作的代碼  /// </summary>  public void HandleConditionsMetEvent(object sender, ConditionsMetEventArgs e)  {    try    {      // 此處為具體的操作    }    catch (Exception ex)    {      //拋出異常,記錄錯(cuò)誤日志    }  }  /// <summary>  /// 初始化  /// </summary>  /// <param name="schedule"></param>  /// <param name="parameters">參數(shù)(該參數(shù)在定時(shí)觸發(fā)設(shè)置時(shí)傳遞)</param>  public void Initialize(ScheduleDefinition schedule, object parameters)  {            //通過傳遞過來的參數(shù)來初始化變量    configFileName = parameters.ToString();    try    {      //初始化的具體代碼    }    catch (Exception e)    {          //拋出異常,記錄錯(cuò)誤日志     }  }}    
復(fù)制代碼

3)配置app.config文件,配置文件的參數(shù)設(shè)置說明:

    a.  <at></at>是一個(gè)Task,如果不同的時(shí)間觸發(fā)不同的程序,則需要設(shè)置多個(gè)<at>; name:就是每個(gè)<at>的名字,可以根據(jù)自己的需要隨便起名; month:該Task在哪個(gè)月份觸發(fā),* 表示每個(gè)月都觸發(fā) ;dayofMonth:每個(gè)月的幾號(hào)觸發(fā),* 表示每天;dayOfWeek:每周幾觸發(fā),* 表示每天都觸發(fā);hour:每天的幾點(diǎn)觸發(fā),* 表示每小時(shí)觸發(fā)一次;minute:每小時(shí)的幾分鐘觸發(fā),58表示每小時(shí)的58分觸發(fā);second:每分鐘的幾秒觸發(fā)。

    b. <task>是需要觸發(fā)的類,type:"需要觸發(fā)的類所在的詳細(xì)地址(項(xiàng)目名.文件夾名.類名),項(xiàng)目名,Version,Culture,PublicKeyToKen",parameters:需要傳遞的參數(shù),如果不傳遞參數(shù)可以設(shè)置為"" ;

復(fù)制代碼
<taskSchedulerEngine>    <schedule>      <at name="TaskName" month="*" dayOfMonth="*" dayOfWeek="*" hour="*" minute="58" second="0" kind="Local">        <execute>          <task type="Test.Task.SyncTask, Test, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null" parameters="FtpConfig.xml" />        </execute>      </at>    </schedule></taskSchedulerEngine>
復(fù)制代碼

4)主程序來開啟定時(shí)程序:

SchedulerRuntime.StartWithConfig();

OK,到現(xiàn)在為止,一個(gè)完整的定時(shí)程序就寫完啦,小伙伴們,歡迎大家提出寶貴意見。


發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 潮安县| 汾阳市| 南充市| 建水县| 乡宁县| 乐昌市| 北宁市| 囊谦县| 茶陵县| 东丽区| 抚顺县| 含山县| 葫芦岛市| 英超| 织金县| 马鞍山市| 宁都县| 如东县| 海口市| 浑源县| 柳州市| 北安市| 吴川市| 宝鸡市| 广灵县| 元江| 郴州市| 乐陵市| 郁南县| 肥西县| 上犹县| 潜山县| 黄大仙区| 宜兰县| 东山县| 江华| 德钦县| 乾安县| 桓仁| 临猗县| 吐鲁番市|