gpt4 book ai didi

.net - Windows服务如何相互交互?

转载 作者:行者123 更新时间:2023-12-02 07:55:02 26 4
gpt4 key购买 nike

假设我有两个 Windows 服务在运行。一项服务是“轮询”——它轮询数据库以查找打印作业。一旦找到新的打印作业,另一个服务 - “打印” - 必须将作业发送到打印机。

(为什么我不能用一项服务做到这一点是一个单独的问题,我们只是说这是有原因的)。

我的简单解决方案是让“轮询”服务创建打印作业并将其保存到某个文件,然后让“打印”服务监视该位置、读取文件并执行打印作业。

是否有更好的方法 - 是否可以通过某种方式直接从“轮询”服务调用“打印”功能?

如果重要的话,开发工具是 .NET 3.5/C#。

最佳答案

这是一个标准的 IPC 问题,有多少种方法就有多少种解决方案:套接字、管道、文件、映射内存等。

对于您的具体示例,它听起来像 message queue可能是一个很好的解决方案。第一个服务可以将作业写入队列,第二个服务可以在方便时读取它。这可以应对诸如打印机忙碌、离线等问题。

关于.net - Windows服务如何相互交互?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1360171/

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