EMPTYMBOXSLEEP
Message and Mbox Processing Configuration
Summary
This attribute defines the number of milliseconds or seconds that a BG
or WISMBD
process remains idle when all Mbox queues in its Mbox set are empty.
Applies To
This attribute can be set for the BG
, WISMBD
or ALL processes.
Default Value
The attribute is assigned the following default value when iProcess Engine is installed.
Machine ID |
Process |
Instance |
Value |
0 |
ALL |
0 |
2 |
Notes
The value of the EMPTYMBOXSLEEP
process attribute can be treated as the idle time either in seconds or in milliseconds:
• | If the value of this attribute is up to (including) 60 , then it is treated as a measure of the time in seconds. |
• | If the value of this attribute is greater than 60 , then it is treated as a measure of the time in milliseconds. |
Whenever a BG
or WISMBD
process requests a message from an empty Mbox, the EMPTYMBOXSLEEP
value is incremented by the EMPTYMBOXSLEEP_INC value until either:
• | the EMPTYMBOXSLEEP_MAX value is reached, or |
• | a message is returned from the Mbox, in which case EMPTYMBOXSLEEP is reset to its configured value. |
By tailoring the values of these three attributes to your particular system configuration, you can avoid unnecessary system overhead resulting from polling for messages on empty queues.
You may notice a delay in processing messages if the system is very quiet and the EMPTYMBOXSLEEP value has increased to its maximum. For example:
• | A user releases a work item just after the BG process has polled the Mbox. The message remains in the Mbox until the idle period has expired. |
• | The BG processes the release instruction and sends out the next work item. That message arrives in its Mbox just after the WISMBD process has polled it, and so remains there until the next idle period has expired. |
In this way, there could be a delay between the work item being released and the next work item arriving of approximately twice the EMPTYMBOXSLEEP_MAX value, even though the system is otherwise idle.