Direct Access Transport Library Functions datcnofree(3DAT)
NAME
datcnofree - destroy an instance of the CNO
SYNOPSIS
cc [ flag... ] file... -ldat [ library... ]
#include
DATRETURN
datcnofree (
IN DATCNOHANDLE cnohandle
)
PARAMETERS
cnohandle Handle for an instance of the CNO
DESCRIPTION
The datcnofree() function destroys a specified instance of
the CNO.
A CNO cannot be deleted while it is referenced by an Event
Dispatcher or while a thread is blocked on it.
RETURN VALUES
DATSUCES The operation was successful.
DATINVALIDHANDLE The cnohandle() parameter is invalid.
DATINVALIDSTATE Parameter in an invalid state. CNO is
in use by an EVD instance or there is
a thread blocked on it.
USAGE
If there is a thread blocked in datcnowait(3DAT), the Con-
sumer can do the following steps to unblock the waiter:
o Create a temporary EVD that accepts software
events. It can be created in advance.
o For a CNO with the waiter, attach that EVD to the
CNO and post the software event on the EVD.
o This unblocks the CNO.
o Repeat for other CNOs that have blocked waiters.
o Destroy the temporary EVD after all CNOs are
SunOS 5.11 Last change: 16 Jul 2004 1
Direct Access Transport Library Functions datcnofree(3DAT)
destroyed and the EVD is no longer needed.
ATRIBUTES
See attributes(5) for descriptions of the following attri-
butes:
ATRIBUTE TYPE ATRIBUTE VALUE
Interface Stability Standard: uDAPL, 1.1, 1.2
MT-Level Unsafe
SEE ALSO
datcnowait(3DAT), libdat(3LIB), attributes(5)
SunOS 5.11 Last change: 16 Jul 2004 2
|