2023-10-21 01:50:38 +02:00
|
|
|
= zmq_disconnect(3)
|
2012-05-11 14:17:45 +01:00
|
|
|
|
|
|
|
|
2023-10-21 01:50:38 +02:00
|
|
|
== NAME
|
2019-06-17 01:55:18 -04:00
|
|
|
zmq_disconnect - Disconnect a socket from an endpoint
|
2012-05-11 14:17:45 +01:00
|
|
|
|
|
|
|
|
2023-10-21 01:50:38 +02:00
|
|
|
== SYNOPSIS
|
2013-12-04 15:02:49 -06:00
|
|
|
*int zmq_disconnect (void '*socket', const char '*endpoint');*
|
2012-05-11 14:17:45 +01:00
|
|
|
|
|
|
|
|
2023-10-21 01:50:38 +02:00
|
|
|
== DESCRIPTION
|
2012-05-11 14:17:45 +01:00
|
|
|
The _zmq_disconnect()_ function shall disconnect a socket specified
|
|
|
|
by the 'socket' argument from the endpoint specified by the 'endpoint'
|
2019-06-17 01:55:18 -04:00
|
|
|
argument. Note the actual disconnect system call might occur at a later time.
|
|
|
|
|
|
|
|
Upon disconnection the will also stop receiving messages originating from
|
2022-02-11 00:45:06 +02:00
|
|
|
this endpoint. Moreover, the socket will no longer be able
|
2019-06-17 01:55:18 -04:00
|
|
|
to queue outgoing messages to this endpoint. The outgoing message queue
|
|
|
|
associated with the endpoint will be discarded. However, if the socket's linger
|
|
|
|
period is non-zero, libzmq will still attempt to transmit these discarded messages,
|
|
|
|
until the linger period expires.
|
|
|
|
|
2023-10-21 01:50:38 +02:00
|
|
|
The 'endpoint' argument is as described in xref:zmq_connect.adoc[zmq_connect]
|
2012-05-11 14:17:45 +01:00
|
|
|
|
2013-12-04 15:02:49 -06:00
|
|
|
NOTE: The default setting of _ZMQ_LINGER_ does not discard unsent messages;
|
2016-02-01 23:00:06 +01:00
|
|
|
this behaviour may cause the application to block when calling _zmq_ctx_term()_.
|
2023-10-21 01:50:38 +02:00
|
|
|
For details refer to xref:zmq_setsockopt.adoc[zmq_setsockopt] and xref:zmq_ctx_term.adoc[zmq_ctx_term]
|
2013-12-04 15:02:49 -06:00
|
|
|
|
2023-10-21 01:50:38 +02:00
|
|
|
== RETURN VALUE
|
2012-05-11 14:17:45 +01:00
|
|
|
The _zmq_disconnect()_ function shall return zero if successful. Otherwise it
|
|
|
|
shall return `-1` and set 'errno' to one of the values defined below.
|
|
|
|
|
2023-10-21 01:50:38 +02:00
|
|
|
== ERRORS
|
2012-05-11 14:17:45 +01:00
|
|
|
*EINVAL*::
|
|
|
|
The endpoint supplied is invalid.
|
|
|
|
*ETERM*::
|
|
|
|
The 0MQ 'context' associated with the specified 'socket' was terminated.
|
|
|
|
*ENOTSOCK*::
|
|
|
|
The provided 'socket' was invalid.
|
2012-12-04 15:14:21 +01:00
|
|
|
*ENOENT*::
|
2019-06-17 01:55:18 -04:00
|
|
|
The provided endpoint is not in use by the socket.
|
2012-05-11 14:17:45 +01:00
|
|
|
|
|
|
|
|
2023-10-21 01:50:38 +02:00
|
|
|
== EXAMPLE
|
2012-05-11 14:17:45 +01:00
|
|
|
.Connecting a subscriber socket to an in-process and a TCP transport
|
|
|
|
----
|
|
|
|
/* Create a ZMQ_SUB socket */
|
|
|
|
void *socket = zmq_socket (context, ZMQ_SUB);
|
|
|
|
assert (socket);
|
|
|
|
/* Connect it to the host server001, port 5555 using a TCP transport */
|
|
|
|
rc = zmq_connect (socket, "tcp://server001:5555");
|
|
|
|
assert (rc == 0);
|
|
|
|
/* Disconnect from the previously connected endpoint */
|
|
|
|
rc = zmq_disconnect (socket, "tcp://server001:5555");
|
|
|
|
assert (rc == 0);
|
|
|
|
----
|
|
|
|
|
2023-10-21 01:50:38 +02:00
|
|
|
== SEE ALSO
|
2023-11-03 11:36:47 +01:00
|
|
|
* xref:zmq_connect.adoc[zmq_connect]
|
|
|
|
* xref:zmq_socket.adoc[zmq_socket]
|
|
|
|
* xref:zmq.adoc[zmq]
|
2012-05-11 14:17:45 +01:00
|
|
|
|
|
|
|
|
2023-10-21 01:50:38 +02:00
|
|
|
== AUTHORS
|
2013-04-11 18:53:02 +02:00
|
|
|
This page was written by the 0MQ community. To make a change please
|
2023-11-22 23:18:23 +01:00
|
|
|
read the 0MQ Contribution Policy at <https://zeromq.org/how-to-contribute/>.
|