Мне нужно уведомить 1-много клиентов для выполнения задачи (перезагрузить). Сервер может работать или не работать в любой момент времени. (По этой причине у меня возникли трудности с определением, кто является клиентом, а кто - сервером.)
В любой момент времени сервер может начать работать. Когда сервер закрывается, он уведомляет всех клиентов о выполнении их задачи.
Я пытался использовать NamedPipeServerStream
и запускать несколько экземпляров на «клиентах» (помните, что отношения странные, так что терпите меня). К сожалению, я могу создать только один сервер Pipe для любого заданного имени сервера. Так что это не сработало. Я мог бы заставить клиентов постоянно проверять наличие сервера, но если я собираюсь начать опрос, я мог бы также опросить БД напрямую.
Моя ситуация примерно такая же, как у наблюдателя. Мне не нужно динамически подписываться / отписываться. Я хочу, чтобы сервер выдал уведомление всем работающим клиентам для выполнения задачи.
Как мне этого добиться? Пожалуйста, имейте в виду, что я должен сделать это с IPC. Сервер / клиенты работают под разными процессами и всегда на одном компьютере.