# zmq_init(3) Manual Page

## NAME

zmq_init - initialise 0MQ context

## SYNOPSIS

void *zmq_init (int io_threads);

## DESCRIPTION

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.

## 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

  An invalid number of io_threads was requested.

## SEE ALSO

zmq(7) zmq_term(3)

## AUTHORS

The ØMQ documentation was written by Martin Sustrik <sustrik@250bpm.com> and Martin Lucina <martin@lucina.net>.