2012-03-20 01:41:20 +01:00
|
|
|
zmq_ctx_set(3)
|
|
|
|
==============
|
|
|
|
|
|
|
|
|
|
|
|
NAME
|
|
|
|
----
|
|
|
|
|
|
|
|
zmq_ctx_set - set context options
|
|
|
|
|
|
|
|
|
|
|
|
SYNOPSIS
|
|
|
|
--------
|
|
|
|
*int zmq_ctx_set (void '*context', int 'option_name', int 'option_value');*
|
|
|
|
|
|
|
|
|
|
|
|
DESCRIPTION
|
|
|
|
-----------
|
|
|
|
The _zmq_ctx_set()_ function shall set the option specified by the
|
|
|
|
'option_name' argument to the value of the 'option_value' argument.
|
|
|
|
|
|
|
|
The _zmq_ctx_set()_ function accepts the following options:
|
|
|
|
|
|
|
|
|
2014-11-17 11:56:59 +01:00
|
|
|
ZMQ_BLOCKY: Fix blocky behavior
|
|
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
|
|
By default the context will block, forever, on a zmq_ctx_term call. The
|
|
|
|
assumption behind this behavior is that abrupt termination will cause
|
|
|
|
message loss. Most real applications use some form of handshaking to ensure
|
|
|
|
applications receive termination messages, and then terminate the context
|
|
|
|
with 'ZMQ_LINGER' set to zero on all sockets. This setting is an easier way
|
|
|
|
to get the same result. When 'ZMQ_BLOCKY' is set to false, all new sockets
|
|
|
|
are given a linger timeout of zero. You must still close all sockets before
|
2016-02-01 23:00:06 +01:00
|
|
|
calling zmq_ctx_term.
|
2014-11-17 11:56:59 +01:00
|
|
|
|
|
|
|
[horizontal]
|
2015-07-20 23:05:48 +02:00
|
|
|
Default value:: true (old behavior)
|
2014-11-17 11:56:59 +01:00
|
|
|
|
|
|
|
|
2012-03-20 01:41:20 +01:00
|
|
|
ZMQ_IO_THREADS: Set number of I/O threads
|
|
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
|
|
The 'ZMQ_IO_THREADS' argument specifies the size of the 0MQ 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. This option only applies before creating any sockets on the
|
|
|
|
context.
|
|
|
|
|
|
|
|
[horizontal]
|
|
|
|
Default value:: 1
|
|
|
|
|
2016-02-09 10:51:51 +01:00
|
|
|
|
2015-07-16 08:59:19 +02:00
|
|
|
ZMQ_THREAD_SCHED_POLICY: Set scheduling policy for I/O threads
|
|
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
|
|
The 'ZMQ_THREAD_SCHED_POLICY' argument sets the scheduling policy for
|
|
|
|
internal context's thread pool. This option is not available on windows.
|
|
|
|
Supported values for this option can be found in sched.h file,
|
|
|
|
or at http://man7.org/linux/man-pages/man2/sched_setscheduler.2.html.
|
|
|
|
This option only applies before creating any sockets on the context.
|
|
|
|
|
|
|
|
[horizontal]
|
|
|
|
Default value:: -1
|
|
|
|
|
2016-02-09 10:51:51 +01:00
|
|
|
|
2015-07-16 08:59:19 +02:00
|
|
|
ZMQ_THREAD_PRIORITY: Set scheduling priority for I/O threads
|
|
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
|
|
The 'ZMQ_THREAD_PRIORITY' argument sets scheduling priority for
|
|
|
|
internal context's thread pool. This option is not available on windows.
|
2017-10-16 13:42:59 +02:00
|
|
|
When the scheduler policy is SCHED_OTHER on Linux, the system call "nice"
|
|
|
|
will be used to set a priority of -20 (max priority).
|
2015-07-16 08:59:19 +02:00
|
|
|
Supported values for this option depend on chosen scheduling policy.
|
|
|
|
Details can be found in sched.h file, or at http://man7.org/linux/man-pages/man2/sched_setscheduler.2.html.
|
|
|
|
This option only applies before creating any sockets on the context.
|
|
|
|
|
|
|
|
[horizontal]
|
|
|
|
Default value:: -1
|
|
|
|
|
2016-02-09 10:51:51 +01:00
|
|
|
|
|
|
|
ZMQ_MAX_MSGSZ: Set maximum message size
|
|
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
|
|
The 'ZMQ_MAX_MSGSZ' argument sets the maximum allowed size
|
|
|
|
of a message sent in the context. You can query the maximal
|
|
|
|
allowed value with linkzmq:zmq_ctx_get[3] using the
|
|
|
|
'ZMQ_MAX_MSGSZ' option.
|
|
|
|
|
|
|
|
[horizontal]
|
|
|
|
Default value:: INT_MAX
|
|
|
|
Maximum value:: INT_MAX
|
|
|
|
|
|
|
|
|
2012-03-20 01:41:20 +01:00
|
|
|
ZMQ_MAX_SOCKETS: Set maximum number of sockets
|
|
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
|
|
The 'ZMQ_MAX_SOCKETS' argument sets the maximum number of sockets allowed
|
2014-02-13 15:54:06 +01:00
|
|
|
on the context. You can query the maximal allowed value with
|
2014-02-14 10:09:19 +01:00
|
|
|
linkzmq:zmq_ctx_get[3] using the 'ZMQ_SOCKET_LIMIT' option.
|
2012-03-20 01:41:20 +01:00
|
|
|
|
|
|
|
[horizontal]
|
|
|
|
Default value:: 1024
|
|
|
|
|
2016-02-09 10:51:51 +01:00
|
|
|
|
2013-01-31 21:52:30 +01:00
|
|
|
ZMQ_IPV6: Set IPv6 option
|
|
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
|
|
The 'ZMQ_IPV6' argument sets the IPv6 value for all sockets created in
|
|
|
|
the context from this point onwards. A value of `1` means IPv6 is
|
|
|
|
enabled, while `0` means the socket will use only IPv4. When IPv6 is
|
|
|
|
enabled, a socket will connect to, or accept connections from, both
|
|
|
|
IPv4 and IPv6 hosts.
|
|
|
|
|
|
|
|
[horizontal]
|
|
|
|
Default value:: 0
|
|
|
|
|
2012-03-20 01:41:20 +01:00
|
|
|
|
|
|
|
RETURN VALUE
|
|
|
|
------------
|
|
|
|
The _zmq_ctx_set()_ function returns zero if successful. Otherwise it
|
|
|
|
returns `-1` and sets 'errno' to one of the values defined below.
|
|
|
|
|
|
|
|
|
|
|
|
ERRORS
|
|
|
|
------
|
|
|
|
*EINVAL*::
|
|
|
|
The requested option _option_name_ is unknown.
|
|
|
|
|
|
|
|
|
|
|
|
EXAMPLE
|
|
|
|
-------
|
|
|
|
.Setting a limit on the number of sockets
|
|
|
|
----
|
|
|
|
void *context = zmq_ctx_new ();
|
|
|
|
zmq_ctx_set (context, ZMQ_MAX_SOCKETS, 256);
|
|
|
|
int max_sockets = zmq_ctx_get (context, ZMQ_MAX_SOCKETS);
|
|
|
|
assert (max_sockets == 256);
|
|
|
|
----
|
|
|
|
|
|
|
|
|
|
|
|
SEE ALSO
|
|
|
|
--------
|
|
|
|
linkzmq:zmq_ctx_get[3]
|
|
|
|
linkzmq:zmq[7]
|
|
|
|
|
|
|
|
|
|
|
|
AUTHORS
|
|
|
|
-------
|
2013-04-11 18:53:02 +02:00
|
|
|
This page was written by the 0MQ community. To make a change please
|
|
|
|
read the 0MQ Contribution Policy at <http://www.zeromq.org/docs:contributing>.
|