DAT_EVD_SET_UNWAITABLE(3DAT)DAT_EVD_SET_UNWAITABLE(3DAT)NAMEdat_evd_set_unwaitable - transition the Event Dispatcher into an
unwaitable state
SYNOPSIS
cc [ flag... ] file... -ldat [ library... ]
#include <dat/udat.h>
DAT_RETURN
dat_evd_set_unwaitable(
IN DAT_EVD_HANDLE evd_handle
)
PARAMETERS
evd_handle
Handle for an instance of Event Dispatcher.
DESCRIPTION
The dat_evd_set_unwaitable() transitions the Event Dispatcher into an
unwaitable state. In this state, calls to dat_evd_wait(3DAT) return
synchronously with a DAT_INVALID_STATE error, and threads already
blocked in dat_evd_wait() are awakened and return with a
DAT_INVALID_STATE error without any further action by the Consumer. The
actual state of the Event Dispatcher is accessible through
dat_evd_query(3DAT) and is DAT_EVD_UNWAITABLE after the return of this
operation.
This call does not affect a CNO associated with this EVD at all. Events
arriving on the EVD after it is set unwaitable still trigger the CNO
(if appropriate), and can be retrieved with dat_evd_dequeue(3DAT).
Because events can arrive normally on the EVD, the EVD might overflow;
the Consumer is expected to protect against this possibility.
RETURN VALUES
DAT_SUCCESS
The operation was successful.
DAT_INVALID_HANDLE
The evd_handle parameter is invalid.
ATTRIBUTES
See attributes(5) for descriptions of the following attributes:
┌────────────────────┬───────────────────────────┐
│ ATTRIBUTE TYPE │ ATTRIBUTE VALUE │
├────────────────────┼───────────────────────────┤
│Interface Stability │ Standard: uDAPL, 1.1, 1.2 │
├────────────────────┼───────────────────────────┤
│MT-Level │ Safe │
└────────────────────┴───────────────────────────┘
SEE ALSOdat_evd_clear_unwaitable(3DAT), dat_evd_dequeue(3DAT),
dat_evd_query(3DAT), dat_evd_wait(3DAT), libdat(3LIB), attributes(5)
Jul 16, 2004 DAT_EVD_SET_UNWAITABLE(3DAT)