Queue service interval events: example 3

A sequence of MQGET calls and MQPUT calls that is more sporadic than the previous examples.

Figure 1. Queue service interval events - example 3


Commentary

  1. At time T(0), the queue statistics are reset and Queue Service Interval High events are enabled.
  2. At P1, the first put starts the service timer.
  3. At P2, the second put increases the queue depth to two. A high event is not generated here because the service interval time has not been exceeded.
  4. At P3, the third put causes a high event to be generated. (The timer has exceeded the service interval.) The timer is not reset because the queue depth was not zero before the put. However, OK events are enabled.
  5. At G1, the MQGET call does not generate an event because the service interval has been exceeded and OK events are enabled. The MQGET call does, however, reset the service timer.
  6. At G2, the MQGET call does not generate an event because the service interval has been exceeded and OK events are enabled. Again, the MQGET call resets the service timer.
  7. At G3, the third get empties the queue and the service timer is equal to the service interval. Therefore an OK event is generated. The service timer is reset and high events are enabled. The MQGET call empties the queue, and this puts the timer in the OFF state.


Event statistics summary

Table 1 summarizes the event statistics for this example.

Attribute Event 1 Event 2
Time of event T(P3) T(G3)
Type of event High OK
TimeSinceReset T(P3) - T(0) T(G3) - T(P3)
HighQDepth 3 3
MsgEnqCount 3 0
MsgDeqCount 0 3
Parent topic: Queue service interval events examples