本篇文章给大家分享的是有关C# 中CWorker类的作用是什么,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。
服务的基本结构是从ServiceBase继承的类。重要的方法包括 OnStart、OnStop、OnPause 和 OnContinue ,每一个替代方法都与一个服务控制操作直接对应。OnStart 方法的目的是创建 CWorker对象,
而C# CWorker类又创建 CWorkerThread对象,然后在该对象中创建执行服务工作的线程。
服务的运行时配置(以及 CWorker和 CWorkerThread对象的属性)是在基于 XML的配置文件中维护的。它的名称与创建的 .exe 文件相同,但带有一个.cfg 后缀。配置示例如下:
〈?xml version="1.0"?〉 〈configuration〉 〈ProcessList〉 〈ProcessDefinition ProcessName="Worker1" ProcessDesc="Message Worker with 2 Threads" ProcessType="AppSpecific" ProcessThreads="2" InputQueue=".private$test_load1" ErrorQueue=".private$test_error"〉 〈OutputList〉 〈OutputDefinition OutputName=".private$test_out11" /〉 〈OutputDefinition OutputName=".private$test_out12" /〉 〈/OutputList〉 〈/ProcessDefinition〉 〈ProcessDefinition ProcessName="Worker2" ProcessDesc="Assembly Worker with 1 Thread" ProcessType="Assembly" ProcessThreads="1" InputQueue=".private$test_load2" ErrorQueue=".private$test_error"〉 〈OutputList〉 〈OutputDefinition OutputName="C:MSDNMessageServiceMessage Example.dll" /〉 〈OutputDefinition OutputName="MSDNMessageService.Message Sample.ExampleClass"/〉 〈/OutputList〉 〈/ProcessDefinition〉 〈/ProcessList〉 〈/configuration〉
CWorkerThread 和C# Cworker类都有相应的服务控制方法,根据服务控制操作进行调用。由于 Hashtable中引用了每一个 CWorker对象,因此需要枚举 Hashtable的内容,以调用适当的服务控制方法: foreach (CWorker cWorker in htWorkers.Values) cWorker.Start();
类似地,实现的 OnPause、OnContinue和 OnStop 方法是通过调用CWorker 对象上的相应方法来执行操作的。
C# CWorker类
C# CWorker类的主要功能是创建和管理 CWorkerThread对象。Start 、Stop、Pause 和 Continue 方法调用相应的 CWorkerThread方法。实际的CWorkerThread 对象是在Start 方法中创建的。与使用 Hashtable管理辅
助对象引用的 Service类相似,CWorker 使用 ArrayList(简单的动态数组)来维护线程对象的列表。
以上就是C# 中CWorker类的作用是什么,小编相信有部分知识点可能是我们日常工作会见到或用到的。希望你能通过这篇文章学到更多知识。更多详情敬请关注编程网行业资讯频道。