gcc 4.7.2
c89
I am looking for a lightweight message queue (IPC), that is cross-platform (linux, windows).
I have used msgget, msgsnd, and msgrcv. But this is not cross-platform so wouldn't work on windows.
I don't need any socket layer (tcp, udp). As all the messaging will be on the same server.
Basically, I have an event loop and I will block (separate thread) until I get a message from the message queue (msgrcv). Then process that event. The messages will come from another shared library that I have created that I will monitor events from in my event loop.
I just want to be able to send message to the message queue (msgsnd) and then receive them (msgrcv) in my event loop.
AFAIK there're two such things: ØMQ and Gearman.
ØMQ is the socket library that acts as a concurrency framework, suitable for asynch I/O for scalable multicore message-passing apps. It supports most OSes including Linux, Windows, OS X.
Gearman allows you to do work in parallel, to load balance processing, and to call functions between languages. In other words, it is the nervous system for how distributed processing communicates.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With