Try OpenEdge Now
skip to main content
Developing AppServer Applications
Programming ABL Client Applications : Managing asynchronous requests : Cancelling asynchronous requests after a specified time limit
 

Cancelling asynchronous requests after a specified time limit

The CANCEL-REQUESTS-AFTER( ) method lets you specify the number of seconds to wait before calling the CANCEL-REQUESTS( ) method on the server object. This feature allows you to prevent calls from taking too much time when the call must be completed in a timely manner. When called, the CANCEL-REQUESTS-AFTER( ) method all requests currently running or queued to run on the server object will be canceled after the specified number of seconds have elapsed, regardless of when they were started.
If the method is called on a server object that already has a timer running, the timer is restarted with the new time interval, measured from that moment.
If the method is called with a parameter whose value is less than or equal to zero, then the timer on that server object is stopped.
Calling this method on a server object has no immediate effect on any asynchronous requests that are currently running (or queued to run) on that server object. Moreover, the length of time these requests have already been running prior to the call does not effect the timer.
The method may be called before or after the asynchronous requests are run. Any asynchronous requests that are run after the method is called must complete before the timer expires. The time available to complete such a request depends on when it was executed, with respect to the CANCEL-REQUESTS-AFTER( ) method call.
The timer has no effect on requests run synchronously during the time interval. Synchronous requests are not canceled, even if they run longer than the specified timeout.
Manually calling the CANCEL-REQUESTS( ) method in the application program during the timeout period has no effect on the timer.
* Examples