ØMQ Manual - ØMQ/3.3.0


zmq_init - initialise ØMQ context


void *zmq_init (int io_threads);


The zmq_init() function initialises a ØMQ context.

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

Thread safety

A ØMQ context is thread safe and may be shared among as many application threads as necessary, without any additional locking required on the part of the caller.

This function is deprecated by zmq_ctx_new(3).

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.


An invalid number of io_threads was requested.

See also

zmq(7) zmq_term(3)


This page was written by the ØMQ community. To make a change please read the ØMQ Contribution Policy at