Мне нужно реализовать механизм уведомлений для системы, в которой есть один менеджер и несколько потребителей / клиентов.Менеджер должен опросить базу данных и инициировать событие всякий раз, когда происходят изменения в данных.Теперь было бы легко, если бы все клиенты были заинтересованы в одних и тех же данных, и было бы достаточно реализовать одно событие и подписать всех клиентов на это событие.Однако клиенты должны получать события только для тех данных, за которые они отвечают.
Например, есть несколько клиентов, которые добавляют новых клиентов.Это происходит через менеджер потокобезопасным способом.Теперь эти клиенты, которые создали клиентов, должны знать о любых изменениях, которые происходят только с этими клиентами.Менеджер опрашивает таблицу «Клиенты» каждые N секунд и получает список всех клиентов, которые изменились.Затем менеджеру нужно будет «направить» (из-за отсутствия лучшего слова) уведомления заинтересованным клиентам.
Должно ли это быть реализовано с помощью своего рода обратного вызова, который каждый клиент должен будет выполнитьпоставлять менеджеру?Это звучит как то, что мне нужно, но я не знаю, как передать параметры этому обратному вызову (здесь это клиенты, которые меня интересуют, не беспокойте меня, когда у вас есть обновления для любого другого клиента)
Я используюC #, .NET 2.0.Спасибо!