A Message Consumer consumes messages either asynchronously or synchronously. The message consumption type is set for a session. Messages are processed by the Message Consumer when the ABL Virtual Machine (AVM) is in a
WAIT–FOR state or other IO-blocking state. While the application is in such a state, all other UI and non-UI events are handled normally.
WAIT–FOR can be called explicitly by the ABL code. It can also be called through the
waitForMessages procedure on the Session object, which works the same for GUI, character, batch, AppServer, and WebSpeed applications. Once a message is consumed, the content of the message is inaccessible.