<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          WinServiceTaskWindows計(jì)劃任務(wù)框架

          聯(lián)合創(chuàng)作 · 2023-09-30 05:22

          一、功能摘要:

          1. 啟動(dòng)觸發(fā)時(shí)間采用開源的Quartz.Net項(xiàng)目的Cron表達(dá)式:"0 0 12 * * ?" 每天中午12點(diǎn)觸發(fā);
          2. 多線程運(yùn)行各任務(wù),互不干擾;
          3. 自動(dòng)監(jiān)視配置文件,配置文件更改后服務(wù)重啟;
          4. 配置Tasks.config中可以引用公用的資源;
          5. 具體任務(wù)中可以引用公有資源,并加入本任務(wù)對應(yīng)的相關(guān)參數(shù);
          6. 具體任務(wù)配置中加上Settings設(shè)置,方便加入一些配置信息,如果還是不能滿足,那么就要自定義Extend的擴(kuò)展了。

          二、運(yùn)行機(jī)制:

          1. 每個(gè)任務(wù)做為一個(gè)獨(dú)立的運(yùn)行線程 隱喻:工人
          2. 服務(wù)本身做為一個(gè)獨(dú)立線程 隱喻:監(jiān)督工人
          3. 監(jiān)督工人每隔 N 秒輪詢一次任務(wù),如發(fā)現(xiàn)任務(wù)的觸發(fā)時(shí)間小于間隔N 即創(chuàng)建該任務(wù)并且啟動(dòng)該任務(wù)。
          4. 啟動(dòng)后的任務(wù)根據(jù)啟動(dòng)時(shí)間于特定時(shí)間執(zhí)行任務(wù)。
          5. 工人工作完本身任務(wù)后自動(dòng)停止。待下一輪監(jiān)督工人查看時(shí)清除任務(wù)對象。

          三、任務(wù)驅(qū)動(dòng)UML圖

          UML類圖


          四、項(xiàng)目內(nèi)容:

          1. support 調(diào)用的一些外部類庫
          2. CS.Scheduling.Framework 任務(wù)調(diào)度框架
          3. CS.Scheduling.NUnitTests 一些測試,這個(gè)隨便寫的
          4. CS.Task.DataTransfer 一個(gè)數(shù)據(jù)轉(zhuǎn)存的任務(wù)示例(DataTableToDataTable已經(jīng)完成)
          5. CS.WinServiceManager WindwosService的服務(wù)管理器,這個(gè)可以算是一個(gè)分支了。用來安裝和管理實(shí)現(xiàn)本框架的AppForm。
          6. CS.WinServiceTask WindsService的實(shí)現(xiàn)示例,該Demo直接調(diào)用任務(wù)調(diào)度框架。

          五、任務(wù)實(shí)現(xiàn)代碼:

          1. 參見CS.Task.DataTransfer.TaskDemo的示例實(shí)現(xiàn)及CS.Task.DataTransfer.DataTableToDataTable實(shí)用實(shí)現(xiàn)
          2. 繼承TaskProvider類后,重寫protected override Result Work() 即可。
          3. 如果自已擴(kuò)展了Extend節(jié)點(diǎn),則要重寫public override void InitExtend()方法
          4. 具體備置可參見Tasks.config文件

          六、WindService的調(diào)試:

          1. 方法一:打開控制臺(tái),拖入CS.WinService.Demo的執(zhí)行程序(該程序還是WinService)加上任一參數(shù) 如:-t 后回車
          2. 方法二:通過CS.WinServiceManager安裝服務(wù)。啟用UDP監(jiān)視器查看即。

          瀏覽 26
          點(diǎn)贊
          評論
          收藏
          分享

          手機(jī)掃一掃分享

          編輯 分享
          舉報(bào)
          評論
          圖片
          表情
          推薦
          點(diǎn)贊
          評論
          收藏
          分享

          手機(jī)掃一掃分享

          編輯 分享
          舉報(bào)
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  处一女一级a一片视频 | 欧美在线看片 | 91清清草视频 | 恨恨干大香蕉 | 草逼毛片|