#include <cogent.h>
int IP_QueueWait(
int qid, int pulse, int eventmask )
;
This function causes qserve to trigger the pulse when a particular event occurs. The calling process does not block waiting for the next event, but will return immediately. In order to implement a blocking wait, the programmer should use IP_QueueWait followed by IP_Receive.
The possible values for eventmask are:
IP_NOTIFY_MSG notifies the caller when the next message is available. This event causes at most one pulse trigger.
IP_NOTIFY_EVERY_MSG notifies the caller when every message is available. This event will cause on pulse trigger for each message that arrives in the queue.
IP_NOTIFY_SPACE notifies the caller when the queue transitions from full to non-full. This event causes at most one pulse trigger.
IP_NOTIFY_ANY_SPACE notifies the caller whenever the queue transitions from full to non-full.
IP_NOTIFY_HALF_SPACE notifies the caller when the queue transitions from half-full to less than half-full. This event causes at most one pulse trigger.
IP_NOTIFY_ANY_HALF_SPACE notifies the caller whenever the queue transitions from half-full to less than half-full.
If the condition for an event is already true at the time of the call to IP_QueueWait, then the pulse is triggered immediately.
Copyright © 1995-2010 by Cogent Real-Time Systems, Inc. All rights reserved.