最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

C#一個(gè)簡單的定時(shí)小程序?qū)崿F(xiàn)代碼

 更新時(shí)間:2015年09月06日 17:03:41   投稿:lijiao  
這篇文章主要介紹了C#實(shí)現(xiàn)一個(gè)簡單的定時(shí)小程序代碼,實(shí)現(xiàn)過程很簡單,需要的朋友可以參考下

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

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

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

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ò)誤日志 
    }
  }
} 

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è)月的幾號觸發(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è)置為"" ;

<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>

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

SchedulerRuntime.StartWithConfig();

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

相關(guān)文章

  • C#實(shí)現(xiàn)將程序運(yùn)行信息寫入日志的方法

    C#實(shí)現(xiàn)將程序運(yùn)行信息寫入日志的方法

    這篇文章主要介紹了C#實(shí)現(xiàn)將程序運(yùn)行信息寫入日志的方法,可實(shí)現(xiàn)將程序運(yùn)行信息寫入日志并存儲在Debug目錄下的"/Log/PRG"下的功能,涉及C#針對日志的相關(guān)寫入技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下
    2015-08-08
  • asp.net core項(xiàng)目mvc權(quán)限控制:分配權(quán)限

    asp.net core項(xiàng)目mvc權(quán)限控制:分配權(quán)限

    學(xué)習(xí)的最好方法就是動手去做,這里以開發(fā)一個(gè)普通的權(quán)限管理系統(tǒng)的方式來從零體驗(yàn)和學(xué)習(xí)Asp.net Core。項(xiàng)目的整體規(guī)劃大致如下
    2017-02-02
  • Unity3D游戲開發(fā)數(shù)據(jù)持久化PlayerPrefs的用法詳解

    Unity3D游戲開發(fā)數(shù)據(jù)持久化PlayerPrefs的用法詳解

    在本篇文章里小編給大家整理了關(guān)于Unity3D游戲開發(fā)之?dāng)?shù)據(jù)持久化PlayerPrefs的使用的相關(guān)知識點(diǎn)內(nèi)容,需要的朋友們參考下。
    2019-08-08
  • C#中動態(tài)數(shù)組用法實(shí)例

    C#中動態(tài)數(shù)組用法實(shí)例

    這篇文章主要介紹了C#中動態(tài)數(shù)組用法,實(shí)例分析了C#中ArrayList實(shí)現(xiàn)動態(tài)數(shù)組的技巧,非常具有實(shí)用價(jià)值,需要的朋友可以參考下
    2015-04-04
  • Unity利用材質(zhì)自發(fā)光實(shí)現(xiàn)物體閃爍

    Unity利用材質(zhì)自發(fā)光實(shí)現(xiàn)物體閃爍

    這篇文章主要為大家詳細(xì)介紹了Unity利用材質(zhì)自發(fā)光實(shí)現(xiàn)物體閃爍,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2019-04-04
  • C#實(shí)現(xiàn)線性搜索算法

    C#實(shí)現(xiàn)線性搜索算法

    線性搜索算法是一種基本的搜索算法,通過逐個(gè)比較元素來查找目標(biāo)元素,學(xué)習(xí)線性搜索算法有助于培養(yǎng)算法思維和編程能力,對于初學(xué)者來說是一種重要的算法訓(xùn)練,感興趣的可以了解一下
    2024-10-10
  • C#讀取文本文件到listbox組件的方法

    C#讀取文本文件到listbox組件的方法

    這篇文章主要介紹了C#讀取文本文件到listbox組件的方法,涉及C#操作文本文件及l(fā)istbox組件的相關(guān)技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下
    2015-04-04
  • C#使用Json.Net對JSON與對象的序列化與反序列化

    C#使用Json.Net對JSON與對象的序列化與反序列化

    這篇文章介紹了Json.Net對JSON與對象的序列化與反序列化,文中通過示例代碼介紹的非常詳細(xì)。對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2022-05-05
  • c# 死鎖和活鎖的發(fā)生及避免

    c# 死鎖和活鎖的發(fā)生及避免

    多線程編程時(shí),如果涉及同時(shí)讀寫共享數(shù)據(jù),就要格外小心。如果共享數(shù)據(jù)是獨(dú)占資源,則要對共享數(shù)據(jù)的讀寫進(jìn)行排它訪問,最簡單的方式就是加鎖。鎖也不能隨便用,否則可能會造成死鎖和活鎖。本文將通過示例詳細(xì)講解死鎖和活鎖是如何發(fā)生的以及如何避免它們。
    2020-11-11
  • c# 使用模式匹配以及 is 和 as 運(yùn)算符安全地進(jìn)行強(qiáng)制轉(zhuǎn)換

    c# 使用模式匹配以及 is 和 as 運(yùn)算符安全地進(jìn)行強(qiáng)制轉(zhuǎn)換

    這篇文章主要介紹了c# 使用模式匹配以及 is 和 as 運(yùn)算符安全地進(jìn)行強(qiáng)制轉(zhuǎn)換,幫助大家更好的理解和使用c#,感興趣的朋友可以了解下
    2020-10-10

最新評論

米林县| 化隆| 乐安县| 共和县| 余姚市| 崇阳县| 都兰县| 城市| 中宁县| 卓尼县| 赤城县| 兰考县| 尼木县| 通山县| 宁安市| 庆城县| 怀安县| 越西县| 梅河口市| 东明县| 临沂市| 金华市| 云林县| 亚东县| 砀山县| 新河县| 久治县| 颍上县| 富顺县| 昌黎县| 白河县| 邵阳县| 咸丰县| 新巴尔虎右旗| 盱眙县| 清徐县| 龙游县| 义马市| 凤庆县| 平原县| 托克托县|