Question

Is there any efficient way to let C programs talk to Java programs on Windows, Linux and Mac OS X? I tried a simple TCP/IP-Server, but it causes a lot of CPU load.

Isn't there a simpler way?

Was it helpful?

Solution

For cross-platform communication you can use sockets if the parties run on different computers, or, for local communication you can use memory-mapped files.

Properly written socket server should not cause too much CPU load, but it's easy to implement it wrong.

Our company offers MsgConnect product (free with source version is available), which hides complexities of building the transport and offers a simple SendMessage-like interface for inter-process communication on various platforms.

OTHER TIPS

The gold standard for these things is ZeroMQ.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top