Did you know ... | Search Documentation: |
broadcast.pl -- Event service |
Generic broadcasting service. Broadcasts are made using the predicate
broadcast(+Templ)
. All registered `listeners' will have their goal
called. Success or failure of this is ignored. The listener can not bind
arguments.
This library is particularly useful for disconnecting modules in an application. Modules can broadcast events such as changes, anticipating other modules need to react on such changes. For example, settings.pl broadcasts changes to settings, allowing dependent modules to react on changes:
:- listen(setting(changed(http:workers, New)), change_workers(New)). change_workers(New) :- setting(http:port, Port), http_workers(Port, New).