国产探花免费观看_亚洲丰满少妇自慰呻吟_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ā)表
主站蜘蛛池模板: 洛扎县| 石嘴山市| 女性| 开封县| 怀宁县| 奇台县| 宣汉县| 上杭县| 察雅县| 墨玉县| 兴仁县| 台北县| 肃宁县| 天津市| 定兴县| 黄大仙区| 高陵县| 米林县| 平南县| 旌德县| 宜兰市| 德清县| 大兴区| 沙坪坝区| 顺昌县| 乐至县| 健康| 肇州县| 丹棱县| 黄平县| 昭通市| 隆回县| 田东县| 深州市| 华阴市| 招远市| 湾仔区| 康马县| 孟连| 五台县| 田林县|