SYNOPSIS

void *zmq_init (int app_threads, int io_threads, int flags);

DESCRIPTION

The zmq_init() function initialises a ØMQ context with app_threads application threads and io_threads I/O threads.

The app_threads argument specifies the maximum number of application threads that will be using ØMQ sockets in this context. As a guide, set this to the number of threads in your application.

The io_threads argument specifies the size of the ØMQ thread pool to handle I/O operations. If your application is using inproc messaging exclusively you may set this to zero, otherwise set it to at least one.

The flags argument is a combination of the flags defined below:

ZMQ_POLL

Specifies that sockets within this context should support multiplexing using zmq_poll(). Enabling this functionality may add a small amount of latency to message transfers compared to leaving it disabled.

RETURN VALUE

The zmq_init() function shall return an opaque handle to the initialised context if successful. Otherwise it shall return NULL and set errno to one of the values defined below.

ERRORS

EINVAL

The number of app_threads requested is less than one, or the number of io_threads requested is negative.

SEE ALSO

zmq(7) zmq_term(3)

AUTHORS

The ØMQ documentation was written by Martin Sustrik <sustrik@250bpm.com> and Martin Lucina <mato@kotelna.sk>.