Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
ZMQ_CLOSE(3)			  0MQ Manual			  ZMQ_CLOSE(3)

NAME
       zmq_close - close 0MQ socket

SYNOPSIS
       int zmq_close (void *socket);

DESCRIPTION
       The zmq_close() function	shall destroy the socket referenced by the
       socket argument.	Any outstanding	messages physically received from the
       network but not yet received by the application with zmq_recv() shall
       be discarded. The behaviour for discarding messages sent	by the
       application with	zmq_send() but not yet physically transferred to the
       network depends on the value of the ZMQ_LINGER socket option for	the
       specified socket.

       zmq_close() must	be called exactly once for each	socket.	If it is never
       called, zmq_ctx_term() will block forever. If it	is called multiple
       times for the same socket or if socket does not point to	a socket, the
       behaviour is undefined.

	   Note

	   The default setting of ZMQ_LINGER does not discard unsent messages;
	   this	behaviour may cause the	application to block when calling
	   zmq_ctx_term(). For details refer to	zmq_setsockopt(3) and
	   zmq_ctx_term(3).

	   Note

	   This	API will complete asynchronously, so not everything will be
	   deallocated after it	returns. See above for details about linger.

RETURN VALUE
       The zmq_close() function	shall return zero if successful. Otherwise it
       shall return -1 and set errno to	one of the values defined below.

ERRORS
       ENOTSOCK
	   The provided	socket was NULL.

SEE ALSO
       zmq_socket(3) zmq_ctx_term(3) zmq_setsockopt(3) 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.

0MQ 4.3.5			  10/09/2023			  ZMQ_CLOSE(3)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=zmq_close&sektion=3&manpath=FreeBSD+Ports+14.3.quarterly>

home | help