-
Notifications
You must be signed in to change notification settings - Fork 0
jonocole/PlayBus
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
PlayBus ======= An interprocess message bus. If no bus is running then a client will become the master node. If the master node drops its connection then another client node will become the master and all other clients will connect to this. This bus is designed to be run on a single host using local servers. the server mediation is handled at the kernel level by exploiting the logic that allows only one process to listen on a named pipe. This code will not work across distributed hosts as no master node mediation is carried out. This could be extended by using a known distributed mediation protocol. Usage ===== There is currently little documentation in the source code but you can get an idea of how to use it by looking at the inspector util - this is a small app that watches the "PlaybusTest" bus and allows you to sendQueries. Building the Inspector ====================== cd utils/inspector qmake make Known Issues ============ The protocol deals with raw byte arrays but each message is new line separated therefore it is not possible to send any data with \n in it. This needs an update in the protocol to send length byte(s) before the message. Windows seemingly allows > 1 process to listen on a named pipe. As a result the bus currently wont work on windows. My current idea for a workaround is to use shared memory (which can only be created by 1 process) and then the creator starts listening.
About
An interprocess message bus
Resources
Stars
Watchers
Forks
Releases
No releases published
Packages 0
No packages published