gpt4 book ai didi

c# - 顺序处理算法或正则表达式

转载 作者:塔克拉玛干 更新时间:2023-11-03 05:26:41 26 4
gpt4 key购买 nike

我正在编写一个服务,主要负责打开和关闭其他服务,但它们需要按特定顺序打开和关闭。

  1. 主程序
  2. 我。 SvcMasterPool1二. SvcMasterPool2三. SvcMasterPool3……
  3. 我。 SvcChildPool1二. SvcChildPool2三. SvcChildPool3.....

规则如下:停止服务:

  1. 如果要停止 #1,则需要在它之前停止其他所有内容。
  2. 如果需要停止#2 中的任何内容,则需要先停止#3 中的匹配服务。 (SvcChildPool1 必须在 SvcMasterPool1 之前停止)
  3. #3 中的服务可以在没有任何先决条件的情况下停止。

启动服务:它与停止序列完全相反。 1.要启动#3中的服务,需要启动#2和#1中匹配的svc 2.#2 中的服务需要#1 才能启动 3. #1 没有先决条件


主 Svc 和子 Svc 的数量可以随时间增加或减少。我不想在我的代码中硬编码逻辑,我正在考虑使用正则表达式来驱动它。我难过的是从#3 获得匹配的 svc。如果我知道我需要停止“SvcMasterPool2”,我该如何想出“SvcChildPool2”。我可以使用正则表达式来匹配所有 SvcChildPoolX,但无法想出匹配等效子项的解决方案。

我们将不胜感激或欢迎提出更合适方法的任何其他建议。

我打算使用数据库,但我不想为单个服务器添加序列。因此有了使用 RegEx 的想法。所以我只存储模式并在所有服务器上使用它。

谢谢。

最佳答案

如果服务在 Windows 中正确设置,则它们可以报告依赖于它们的内容。

您可以使用 ServiceController启动和停止服务,并使用其属性 DependentServices处理取决于它们的启动和停止。

相关问题: Restart a service with dependent services?

关于c# - 顺序处理算法或正则表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9432927/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com