代码之家  ›  专栏  ›  技术社区  ›  Austin Salonen gmlacrosse

C,Windows服务:servicebase。使用同一类型的多个服务运行

  •  5
  • Austin Salonen gmlacrosse  · 技术社区  · 15 年前

    我正试图通过 ServiceBase.Run(ServiceBase[] ) 但它只运行第一个。 MSDN 并没有明确否认这一点;这段摘录是否意味着它们都必须是不同的类型?(粗体字是我写的,不是msdn)

    在服务可执行文件的main()函数中调用此重载以加载 关联服务 .

    1 回复  |  直到 15 年前
        1
  •  7
  •   Reed Copsey    15 年前

    这就是目的。这里的想法是,您可以让一个可执行文件创建“多个服务”,而不仅仅是单一类型的服务。

    当服务在scm中注册时,预期每个服务都是唯一的。这意味着(我相信是这样的)数组中的每个元素都必须是 ServiceBase .

    如果你真的只是想拥有 相同的 服务,我会重新考虑你的设计。只要让服务使用同一方法触发多个线程,它就可以为单个服务实例提供相同的效果。