zmq_init.3 1.29 KB
Newer Older
1
.TH zmq_init 3 "" "(c)2007-2010 iMatix Corporation" "0MQ User Manuals"
2 3 4 5 6
.SH NAME
zmq_init \- initialises 0MQ context
.SH SYNOPSIS
.B void *zmq_init (int app_threads, int io_threads, int flags);
.SH DESCRIPTION
7 8 9 10 11 12 13 14 15
Initialises 0MQ context. 
.IR app_threads
specifies maximal number of application threads that can own open sockets
at the same time. At least one application thread should be defined.
.IR io_threads
specifies the size of thread pool to handle I/O operations. The value shouldn't
be negative. Zero can be used in case only in-process messaging is going to be
used, i.e. there will be no I/O traffic.

16 17
.IR flags 
argument is a combination of the flags defined below:
18 19 20 21 22 23
.IP "\fBZMQ_POLL\fP"
flag specifying that the sockets within this context should be pollable (see
.IR zmq_poll
). Pollable sockets may add a little latency to the message transfer when
compared to non-pollable sockets.

24
.SH RETURN VALUE
25 26
Function returns context handle is successful. Otherwise it returns NULL and
sets errno to one of the values below.
27
.SH ERRORS
28
.IP "\fBEINVAL\fP"
29
there's less than one application thread allocated, or number of I/O threads
30
is negative.
31
.SH EXAMPLE
32 33 34 35
.nf
void *ctx = zmq_init (1, 1, ZMQ_POLL);
assert (ctx);
.fi
36
.SH SEE ALSO
37
.BR zmq_term (3)
38
.BR zmq_socket (3)
39 40
.SH AUTHOR
Martin Sustrik <sustrik at 250bpm dot com>