ZMQ_CTX_SET - Online Linux Manual Page

Section : 3
Updated : 01/21/2023
Source : 0MQ 4​.3​.4
Note : 0MQ Manual

NAMEzmq_ctx_set − set context options

SYNOPSISint zmq_ctx_set (void *context, int option_name, int option_value);

DESCRIPTIONThe 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_BLOCKY: Fix blocky behaviorBy 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 calling zmq_ctx_term​.
Default value true (old behavior)

ZMQ_IO_THREADS: Set number of I/O threadsThe 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​.
Default value 1

ZMQ_THREAD_SCHED_POLICY: Set scheduling policy for I/O threadsThe ZMQ_THREAD_SCHED_POLICY argument sets the scheduling policy for internal contexts 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​.
Default value −1

ZMQ_THREAD_PRIORITY: Set scheduling priority for I/O threadsThe ZMQ_THREAD_PRIORITY argument sets scheduling priority for internal contexts thread pool​. This option is not available on windows​. Supported values for this option depend on chosen scheduling policy​. On Linux, when the scheduler policy is SCHED_OTHER, SCHED_IDLE or SCHED_BATCH, the OS scheduler will not use the thread priority but rather the thread "nice value"; in such cases the system call "nice" will be used to set the nice value to −20 (max priority) instead of adjusting the thread priority (which must be zero for those scheduling policies)​. 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​.
Default value −1

ZMQ_THREAD_AFFINITY_CPU_ADD: Add a CPU to list of affinity for I/O threadsThe ZMQ_THREAD_AFFINITY_CPU_ADD argument adds a specific CPU to the affinity list for the internal contexts thread pool​. This option is only supported on Linux​. This option only applies before creating any sockets on the context​. The default affinity list is empty and means that no explicit CPU−affinity will be set on internal contexts threads​.
Default value −1

ZMQ_THREAD_AFFINITY_CPU_REMOVE: Remove a CPU to list of affinity for I/O threadsThe ZMQ_THREAD_AFFINITY_CPU_REMOVE argument removes a specific CPU to the affinity list for the internal contexts thread pool​. This option is only supported on Linux​. This option only applies before creating any sockets on the context​. The default affinity list is empty and means that no explicit CPU−affinity will be set on internal contexts threads​.
Default value −1

ZMQ_THREAD_NAME_PREFIX: Set name prefix for I/O threadsThe ZMQ_THREAD_NAME_PREFIX argument sets a numeric prefix to each thread created for the internal contexts thread pool​. This option is only supported on Linux​. This option is useful to help debugging done via "top −H" or "gdb"; in case multiple processes on the system are using ZeroMQ it is useful to provide through this context option an application−specific prefix to distinguish ZeroMQ background threads that belong to different processes​. This option only applies before creating any sockets on the context​.
Default value −1

ZMQ_MAX_MSGSZ: Set maximum message sizeThe ZMQ_MAX_MSGSZ argument sets the maximum allowed size of a message sent in the context​. You can query the maximal allowed value with zmq_ctx_get(3) using the ZMQ_MAX_MSGSZ option​.
Default value INT_MAX
Maximum value INT_MAX

ZMQ_ZERO_COPY_RECV: Specify message decoding strategyThe ZMQ_ZERO_COPY_RECV argument specifies whether the message decoder should use a zero copy strategy when receiving messages​. The zero copy strategy can lead to increased memory usage in some cases​. This option allows you to use the older copying strategy​. You can query the value of this option with zmq_ctx_get(3) using the ZMQ_ZERO_COPY_RECV option​. NOTE: in DRAFT state, not yet available in stable releases​.
Default value 1

ZMQ_MAX_SOCKETS: Set maximum number of socketsThe ZMQ_MAX_SOCKETS argument sets the maximum number of sockets allowed on the context​. You can query the maximal allowed value with zmq_ctx_get(3) using the ZMQ_SOCKET_LIMIT option​.
Default value 1023

ZMQ_IPV6: Set IPv6 optionThe 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​.
Default value 0

RETURN VALUEThe zmq_ctx_set() function returns zero if successful​. Otherwise it returns −1 and sets errno to one of the values defined below​.

ERRORSEINVAL The requested option option_name is unknown​.

EXAMPLESetting 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 ALSOzmq_ctx_get(3) zmq(7)

AUTHORSThis page was written by the 0MQ community​. To make a change please read the 0MQ Contribution Policy at http://www​.zeromq​.org/docs:contributing​.
0
Johanes Gumabo
Data Size   :   23,380 byte
man-zmq_ctx_set.3Build   :   2025-03-22, 13:26   :  
Visitor Screen   :   x
Visitor Counter ( page / site )   :   1 / 1,209,243
Visitor ID   :     :  
Visitor IP   :   3.145.88.233   :  
Visitor Provider   :   AMAZON-02   :  
Provider Position ( lat x lon )   :   39.962500 x -83.006100   :   x
Provider Accuracy Radius ( km )   :   1000   :  
Provider City   :   Columbus   :  
Provider Province   :   Ohio ,   :   ,
Provider Country   :   United States   :  
Provider Continent   :   North America   :  
Visitor Recorder   :   Version   :  
Visitor Recorder   :   Library   :  
Online Linux Manual Page   :   Version   :   Online Linux Manual Page - Fedora.40 - march=x86-64 - mtune=generic - 25.03.22
Online Linux Manual Page   :   Library   :   lib_c - 24.10.03 - march=x86-64 - mtune=generic - Fedora.40
Online Linux Manual Page   :   Library   :   lib_m - 24.10.03 - march=x86-64 - mtune=generic - Fedora.40
Data Base   :   Version   :   Online Linux Manual Page Database - 24.04.13 - march=x86-64 - mtune=generic - fedora-38
Data Base   :   Library   :   lib_c - 23.02.07 - march=x86-64 - mtune=generic - fedora.36


Very long time ago, I have the best tutor, Wenzel Svojanovsky. If someone knows the email address of Wenzel Svojanovsky, please send an email to johanesgumabo@gmail.com.
Help me, linux0001.com will expire on July 16, 2025. I have no money to renew it. View detail

If error, please print screen and send to johanes_gumabo@yahoo.co.id
Under development. Support me via PayPal.