我正在寻找一种在我更改内存中的对象后通知多个侦听器的方法。
侦听器是Javascript / Ajax调用,知道对象的最后已知序列号。如果对象序列号相同,则应阻止调用,直到对象发生更改(来自另一个进程)。如果对象发生了变化,那么所有听众都应该被通知,以便他们可以阅读该对象。
多个听众:
我该怎么做? JavaScript的东西不是问题。问题是在对象更改内存后通知所有侦听器。
我的服务器环境perl / linux。我想我已经阅读了所有的IPC :: *内容,如IPC::SysV(只有内存)或 IPC::Semaphore(如果解锁的资源没有等待)或IPC :: Msg(仅1:1通信,而不是1:m)。
我自己的一些想法:我知道每个听众都可以注册到对象/数据,如果数据发生变化,每个听众都可以得到通知,但这对我来说似乎是一个很大的开销。对象必须包含有效代码才能通知侦听器。
我更喜欢更像KISS的方法,没有代码附加到对象数据。