MSGQ Module
2-238
transports[0].initFxn = ...
transports[0].fxns = ...
transports[0].object = ...
transports[0].params = ...
transports[0].procId = 0;
transports[1] = MSGQ_NOTRANSPORT;//no self-transport
transports[2].initFxn = ...
transports[2].fxns = ...
...
transports[2].procId = 2;
MSGQ_config.transport = transports;
Note that some of the parameters may not be able to be determined
easily at run-time, therefore you may need to use a mixture of these two
options.
Message Queue
Management
When a message queue is closed, the threads that located the closing
message queue are not notified. No messages should be sent to a closed
message queue. Additionally, there should be no active call to
MSGQ_get or MSGQ_getAttrs to a message queue that is being closed.
When a message queue is closed, all unread messages in the message
queue are freed.
MSGQ Manager
Properties
To configure the MSGQ manager, the MSGQ_Config structure must be
defined in the C code. See “Static Configuration” on page 2-234.
The following global property must also be set in order to use the MSGQ
module:
❏
Enable Message Queue Manager
. If ENABLEMSGQ is TRUE,
each transport and message queue specified in the MSGQ_config
structure (see “Static Configuration” on page 2-234) is initialized.
Tconf Name: ENABLEMSGQ
Type: Bool
Example:
bios.MSGQ.ENABLEMSGQ = true;