nn_term - notify all sockets about process termination

NAME  SYNOPSIS  DESCRIPTION  EXAMPLE  SEE ALSO  AUTHORS 

NAME

nn_term − notify all sockets about process termination

SYNOPSIS

#include <nanomsg/nn.h>

void nn_term (void);

DESCRIPTION

To help with shutdown of multi−threaded programs nanomsg provides the nn_term() function which closes all open sockets, and releases all related resources.

If a socket is blocked inside a blocking function, such as nn_recv(3), it will be unblocked and EBADF error will be returned to the user. Subsequent calls on such sockets will also return EBADF.

Attempting to open a new socket with nn_socket(3) will result in an ETERM error.

If waiting for NN_SNDFD or NN_RCVFD using a polling function, such as poll() or select(), the call will unblock with both NN_SNDFD and NN_RCVFD signaled.

EXAMPLE

s = nn_socket (AF_SP, NN_PAIR);
nn_term ();
rc = nn_send (s, "ABC", 3, 0);
assert (rc == −1 && errno == EBADF);

SEE ALSO

nn_close(3) nn_send(3) nn_socket(3) nn_recv(3) nanomsg(7)

AUTHORS

Martin Sustrik <[email protected]> Garrett D’Amore <[email protected]>


Updated 2024-01-29 - jenkler.se | uex.se