dat_cno_free(3DAT) Direct Access Transport Library Functionsdat_cno_free(3DAT)NAMEdat_cno_free - destroy an instance of the CNO
SYNOPSIS
cc [ flag... ] file... -ldat [ library... ]
#include <dat/udat.h>
DAT_RETURN
dat_cno_free (
IN DAT_CNO_HANDLE cno_handle
)
PARAMETERS
cno_handle Handle for an instance of the CNO
DESCRIPTION
The dat_cno_free() 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
DAT_SUCCESS The operation was successful.
DAT_INVALID_HANDLE The cno_handle() parameter is invalid.
DAT_INVALID_STATE 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 dat_cno_wait(3DAT), the Consumer can do
the following steps to unblock the waiter:
· Create a temporary EVD that accepts software events. It can be
created in advance.
· For a CNO with the waiter, attach that EVD to the CNO and post the
software event on the EVD.
· This unblocks the CNO.
· Repeat for other CNOs that have blocked waiters.
· Destroy the temporary EVD after all CNOs are destroyed and the EVD
is no longer needed.
ATTRIBUTES
See attributes(5) for descriptions of the following attributes:
┌─────────────────────────────┬─────────────────────────────┐
│ ATTRIBUTE TYPE │ ATTRIBUTE VALUE │
├─────────────────────────────┼─────────────────────────────┤
│Interface Stability │Standard: uDAPL, 1.1, 1.2 │
├─────────────────────────────┼─────────────────────────────┤
│MT-Level │Unsafe │
└─────────────────────────────┴─────────────────────────────┘
SEE ALSOdat_cno_wait(3DAT), libdat(3LIB), attributes(5)SunOS 5.10 16 Jul 2004 dat_cno_free(3DAT)