Polling the Events from the Queue (Magic xpa 4.x)
The point at which the engine polls events from the event queue is affected by the following settings:
Keyboard Idle Seconds
|
In an Online, Rich Client or Browser task, events in the event queue are polled whenever the task is in idle mode and parked on a control. The engine polls all events that have been queued whenever an idle state is reached.
Important:
|
Since an asynchronous Raise Event operation is executed at the next idle time, the event may actually be handled in a different location than expected. For example, an asynchronous ‘Close’ internal Raise Event executed before a Call operation to another task takes effect in the called task and not in the task that raised the event. This is because the next idle time after the event was queued occurs in the called task.
|
|
Batch Event Interval
|
Batch tasks have no idle time. When you run a Batch task, you can instruct the engine to poll events off the event queue at a given time interval. You define this interval in the Batch Event Interval setting in the System tab of the Environment dialog box. If you set the Batch Event Interval to 1000 (milliseconds), the engine polls the events from the event queue every 1000 ms.
When this environment setting is set to zero, no event polling will occur by time interval. This environment setting is general and affects every Batch task.
|
Record Event Interval
|
You can set your Batch task to poll events off the event queue after processing a set amount of records. You define the setting in the Record Event Interval property of the Task that appears under the Behavior tab of the Task Properties dialog box. When you set the property to 100, the engine polls the events every time it finishes running through 100 records. If the setting is 1, the Magic xpa engine polls events on every record.
The value of this property is set by an expression. The expression should evaluate to a number representing the record interval.
|
The engine polls the events off the event queue at both the Batch Event Interval and the Record Event Interval. Whenever one of these intervals is reached, the engine polls the events.
|
|
Allow Events
|
You can set your Batch task to work without interruption by completely disabling the event polling for that task. To do so you should set the Allow Events Task property to No.
|