summaryrefslogtreecommitdiff
path: root/doc/zmq_init.txt
blob: 9df3e67d2b9477aee4606044d6519e1ca3cbd9c1 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
zmq_init(3)
===========


NAME
----
zmq_init - initialise 0MQ context


SYNOPSIS
--------
*void *zmq_init (int 'app_threads', int 'io_threads', int 'flags');*


DESCRIPTION
-----------
The _zmq_init()_ function initialises a 0MQ '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 0MQ 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 0MQ 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
--------
linkzmq:zmq[7]
linkzmq:zmq_term[3]


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