getq(D3) getq(D3)
NAME
getq - get the next message from a queue
SYNOPSIS
#include <sys/stream.h>
#include <sys/ddi.h>
mblk_t *getq(queue_t *q);
Arguments
q Pointer to the queue from which the message is to be
retrieved.
DESCRIPTION
getq gets the next available message from the top of the queue
pointed to by q. It handles flow control, restarting I/O that
was blocked as needed.
Return Values
If there is a message to retrieve, getq returns a pointer to
it. If no message is queued, getq returns a NULL pointer.
USAGE
getq is typically used by service routines [see srv(D2)] to
retrieve queued messages.
Level
Base or Interrupt.
Synchronization Constraints
Does not sleep.
Driver-defined basic locks, read/write locks, and sleep locks
may be held across calls to this function.
The caller cannot have the stream frozen [see freezestr(D3)]
when calling this function.
Examples
See srv(D2) for an example of getq.
REFERENCES
bcanput(D3), canput(D3), putbq(D3), putq(D3), qenable(D3),
rmvq(D3), srv(D2)
Copyright 1994 Novell, Inc. Page 1
getq(D3) getq(D3)
NOTICES
Portability
All processors
Applicability
ddi: 1, 2, 3, 4, 5, 5mp, 6, 6mp, 7, 7mp
Copyright 1994 Novell, Inc. Page 2