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: 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 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 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. 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 ZMQ_MAX_SOCKETS: Set maximum number of sockets ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ The 'ZMQ_MAX_SOCKETS' argument sets the maximum number of sockets allowed on the context. You can query the maximal allowed value with linkzmq:zmq_ctx_get[3] using the 'ZMQ_SOCKET_LIMIT' option. [horizontal] Default value:: 1024 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 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 ------- This page was written by the 0MQ community. To make a change please read the 0MQ Contribution Policy at .