mirror of
https://github.com/zeromq/libzmq.git
synced 2024-12-28 16:15:23 +08:00
67e02ca8bc
contributors and doesn't reflect the real process. I've taken out all named authors and referred to the contribution policy. Hopefully this will improve the contributions to the man pages.
91 lines
2.8 KiB
Plaintext
91 lines
2.8 KiB
Plaintext
zmq_ipc(7)
|
|
==========
|
|
|
|
|
|
NAME
|
|
----
|
|
zmq_ipc - 0MQ local inter-process communication transport
|
|
|
|
|
|
SYNOPSIS
|
|
--------
|
|
The inter-process transport passes messages between local processes using a
|
|
system-dependent IPC mechanism.
|
|
|
|
NOTE: The inter-process transport is currently only implemented on operating
|
|
systems that provide UNIX domain sockets.
|
|
|
|
|
|
ADDRESSING
|
|
----------
|
|
A 0MQ endpoint is a string consisting of a 'transport'`://` followed by an
|
|
'address'. The 'transport' specifies the underlying protocol to use. The
|
|
'address' specifies the transport-specific address to connect to.
|
|
|
|
For the inter-process transport, the transport is `ipc`, and the meaning of
|
|
the 'address' part is defined below.
|
|
|
|
|
|
Binding a socket
|
|
~~~~~~~~~~~~~~~~
|
|
When binding a 'socket' to a local address using _zmq_bind()_ with the 'ipc'
|
|
transport, the 'endpoint' shall be interpreted as an arbitrary string
|
|
identifying the 'pathname' to create. The 'pathname' must be unique within the
|
|
operating system namespace used by the 'ipc' implementation, and must fulfill
|
|
any restrictions placed by the operating system on the format and length of a
|
|
'pathname'.
|
|
|
|
When the address is `*`, _zmq_bind()_ shall generate a unique temporary
|
|
pathname. The caller should retrieve this pathname using the ZMQ_LAST_ENDPOINT
|
|
socket option. See linkzmq:zmq_getsockopt[3] for details.
|
|
|
|
NOTE: any existing binding to the same endpoint shall be overridden. That is,
|
|
if a second process binds to an endpoint already bound by a process, this
|
|
will succeed and the first process will lose its binding. In this behavior,
|
|
the 'ipc' transport is not consistent with the 'tcp' or 'inproc' transports.
|
|
|
|
NOTE: the endpoint pathname must be writable by the process. When the endpoint
|
|
starts with '/', e.g., `ipc:///pathname`, this will be an _absolute_ pathname.
|
|
If the endpoint specifies a directory that does not exist, the bind shall fail.
|
|
|
|
Connecting a socket
|
|
~~~~~~~~~~~~~~~~~~~
|
|
When connecting a 'socket' to a peer address using _zmq_connect()_ with the
|
|
'ipc' transport, the 'endpoint' shall be interpreted as an arbitrary string
|
|
identifying the 'pathname' to connect to. The 'pathname' must have been
|
|
previously created within the operating system namespace by assigning it to a
|
|
'socket' with _zmq_bind()_.
|
|
|
|
|
|
EXAMPLES
|
|
--------
|
|
.Assigning a local address to a socket
|
|
----
|
|
// Assign the pathname "/tmp/feeds/0"
|
|
rc = zmq_bind(socket, "ipc:///tmp/feeds/0");
|
|
assert (rc == 0);
|
|
----
|
|
|
|
.Connecting a socket
|
|
----
|
|
// Connect to the pathname "/tmp/feeds/0"
|
|
rc = zmq_connect(socket, "ipc:///tmp/feeds/0");
|
|
assert (rc == 0);
|
|
----
|
|
|
|
SEE ALSO
|
|
--------
|
|
linkzmq:zmq_bind[3]
|
|
linkzmq:zmq_connect[3]
|
|
linkzmq:zmq_inproc[7]
|
|
linkzmq:zmq_tcp[7]
|
|
linkzmq:zmq_pgm[7]
|
|
linkzmq:zmq_getsockopt[3]
|
|
linkzmq:zmq[7]
|
|
|
|
|
|
AUTHORS
|
|
-------
|
|
This page was written by the 0MQ community. To make a change please
|
|
read the 0MQ Contribution Policy at <http://www.zeromq.org/docs:contributing>.
|