Notice: This Wiki is now read only and edits are no longer possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.
IPC
Introduction
Inter-Process Communication (IPC) for Java allows for an interaction between an application running in a Java virtual machine and its native environment. Although the term IPC is also known to denote communication across system boundaries, this particular implementation is limited to a well-known set of system-local mechanisms. Although the I/O primitives supported by the Java platform already allow for inter-process communication, their non-functional features related to performance or security, are inferior to some of the unsupported IPC mechanisms available on today's operating systems.
IPC Mechanisms
The following mechanisms are under consideration in the context of Java IPC:
- Signal
- Semaphore
- FIFO a.k.a. (Anonymous or Named) Pipe
- Shared Memory
- Domain Socket
As this is not about distributed systems, the following mechanisms are not under consideration:
- RPC (remoting)
- Socket (UDP or TCP)
Of course, these mechanisms are already supported by the Java platform.