Уведомить нескольких слушателей после изменения объекта - PullRequest
0 голосов
/ 17 декабря 2011

Я ищу способ уведомить несколько слушателей после того, как я изменил объект в памяти.

Слушателями являются вызовы Javascript / Ajax, зная последний известный серийный номер объекта.Если серийный номер объекта совпадает, вызов должен быть заблокирован, пока объект не изменится (из другого процесса).И если объект изменяется, все слушатели должны быть уведомлены, чтобы они могли прочитать объект.

Несколько слушателей:

  • Проверить объект с заданным серийным номером
  • Возвращать объектданные, если число отличается.
  • Подождите, пока объект не изменится.

Как я могу это сделать?Вещи JavaScript не проблема здесь.Проблема состоит в том, чтобы уведомить всех слушателей после изменения объекта в памяти.

Окружение моего сервера perl / linux.Я думаю, что я прочитал все вещи IPC :: *, такие как IPC :: SysV (только память) или IPC :: Семафор (не нужно ждать, если ресурс разблокирован) илиIPC :: Msg (всего 1: 1, а не 1: m).

Некоторые мысли о себе: я знаю, что каждый слушатель может зарегистрироваться на объекте / данных, и если данные изменятся, каждый слушатель может быть уведомленно мне кажется, что это накладные расходы.И объект должен содержать активный код для уведомления слушателей.

Я бы предпочел более KISS-подобный подход без кода, прикрепленного к данным объекта.

...