我需要通知 1 多个客户端执行任务(重新加载)。服务器可能在也可能不在任何给定时间点运行。(出于这个原因,我很难定义谁是客户端,谁是服务器。)
在任何给定时间,服务器都可以开始运行。当服务器自行关闭时,它会通知所有客户端执行他们的任务。
我尝试NamedPipeServerStream
在“客户端”上使用并运行多个实例(记住这种关系很奇怪,所以请耐心等待)。不幸的是,我只能为任何给定的服务器名称创建一个管道服务器。所以这没有用。我可以让客户端不断检查服务器,但如果我要开始轮询,那么我不妨直接轮询数据库。
我的情况大致类似于观察者模式。我不需要动态订阅/取消订阅。我确实希望服务器向所有正在运行的客户端推送通知以执行任务。
我怎样才能做到这一点?请记住,我必须使用 IPC 执行此操作。服务器/客户端在不同的进程下运行,并且始终在同一台机器上。