日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
C#CWorker類簡(jiǎn)介

學(xué)習(xí)ServiceBase繼承的類時(shí),經(jīng)常會(huì)遇到C# CWorker類問題,這里將介紹C# CWorker類問題的解決方法。

創(chuàng)新互聯(lián)專注于昌樂企業(yè)網(wǎng)站建設(shè),成都響應(yīng)式網(wǎng)站建設(shè),商城網(wǎng)站制作。昌樂網(wǎng)站建設(shè)公司,為昌樂等地區(qū)提供建站服務(wù)。全流程按需求定制開發(fā),專業(yè)設(shè)計(jì),全程項(xiàng)目跟蹤,創(chuàng)新互聯(lián)專業(yè)和態(tài)度為您提供的服務(wù)

服務(wù)的基本結(jié)構(gòu)是從ServiceBase繼承的類。重要的方法包括 OnStart、OnStop、OnPause 和 OnContinue ,每一個(gè)替代方法都與一個(gè)服務(wù)控制操作直接對(duì)應(yīng)。OnStart 方法的目的是創(chuàng)建 CWorker對(duì)象,
而C# CWorker類又創(chuàng)建 CWorkerThread對(duì)象,然后在該對(duì)象中創(chuàng)建執(zhí)行服務(wù)工作的線程。

服務(wù)的運(yùn)行時(shí)配置(以及 CWorker和 CWorkerThread對(duì)象的屬性)是在基于 XML的配置文件中維護(hù)的。它的名稱與創(chuàng)建的 .exe 文件相同,但帶有一個(gè).cfg 后綴。配置示例如下:

 
 
 
  1. 〈?xml version="1.0"?〉
  2. 〈configuration〉
  3. 〈ProcessList〉
  4. 〈ProcessDefinition
  5. ProcessName="Worker1"
  6. ProcessDesc="Message Worker with 2 Threads"
  7. ProcessType="AppSpecific"
  8. ProcessThreads="2"
  9. InputQueue=".private$test_load1"
  10. ErrorQueue=".private$test_error"〉
  11. 〈OutputList〉
  12. 〈OutputDefinition OutputName=".private$test_out11" /〉
  13. 〈OutputDefinition OutputName=".private$test_out12" /〉
  14. 〈/OutputList〉
  15. 〈/ProcessDefinition〉
  16. 〈ProcessDefinition
  17. ProcessName="Worker2"
  18. ProcessDesc="Assembly Worker with 1 Thread"
  19. ProcessType="Assembly"
  20. ProcessThreads="1"
  21. InputQueue=".private$test_load2"
  22. ErrorQueue=".private$test_error"〉
  23. 〈OutputList〉
  24. 〈OutputDefinition OutputName="C:MSDNMessageServiceMessage
  25. Example.dll" /〉
  26. 〈OutputDefinition OutputName="MSDNMessageService.Message
  27. Sample.ExampleClass"/〉
  28. 〈/OutputList〉
  29. 〈/ProcessDefinition〉
  30. 〈/ProcessList〉
  31. 〈/configuration〉 

CWorkerThread 和C# Cworker類都有相應(yīng)的服務(wù)控制方法,根據(jù)服務(wù)控制操作進(jìn)行調(diào)用。由于 Hashtable中引用了每一個(gè) CWorker對(duì)象,因此需要枚舉 Hashtable的內(nèi)容,以調(diào)用適當(dāng)?shù)姆?wù)控制方法: foreach (CWorker cWorker in htWorkers.Values)  cWorker.Start();

類似地,實(shí)現(xiàn)的 OnPause、OnContinue和 OnStop 方法是通過調(diào)用CWorker 對(duì)象上的相應(yīng)方法來執(zhí)行操作的。

C# CWorker類

C# CWorker類的主要功能是創(chuàng)建和管理 CWorkerThread對(duì)象。Start 、Stop、Pause 和 Continue 方法調(diào)用相應(yīng)的 CWorkerThread方法。實(shí)際的CWorkerThread 對(duì)象是在Start 方法中創(chuàng)建的。與使用 Hashtable管理輔
助對(duì)象引用的 Service類相似,CWorker 使用 ArrayList(簡(jiǎn)單的動(dòng)態(tài)數(shù)組)來維護(hù)線程對(duì)象的列表。


分享標(biāo)題:C#CWorker類簡(jiǎn)介
文章起源:http://www.5511xx.com/article/cdeohjs.html