Current File : //usr/share/man/man3dat/dat_cno_free.3dat
'\" te
.\" This manual page is derived from the DAT/uDAPL 1.2 specification.
.\" Portions Copyright (c) 2007, Sun Microsystems, Inc. All Rights Reserved.
.TH dat_cno_free 3DAT "16 Jul 2004" "SunOS 5.11" "Direct Access Transport Library Functions"
.SH NAME
dat_cno_free \- destroy an instance of the CNO
.SH SYNOPSIS
.LP
.nf
cc [ \fIflag\fR\&.\|.\|. ] \fIfile\fR\&.\|.\|. \fB-ldat\fR [ \fIlibrary\fR\&.\|.\|. ] 
#include <\fBdat/udat.h\fR>

DAT_RETURN
    dat_cno_free (
    IN    DAT_CNO_HANDLE    \fIcno_handle\fR
    )
.fi

.SH PARAMETERS
.sp
.ne 2
.mk
.na
\fB\fIcno_handle\fR\fR
.ad
.RS 14n
.rt  
Handle for an instance of the CNO
.RE

.SH DESCRIPTION
.sp
.LP
The \fBdat_cno_free()\fR function destroys a specified instance of the CNO.
.sp
.LP
A CNO cannot be deleted while it is referenced by an Event Dispatcher or while a thread is blocked on it.
.SH RETURN VALUES
.sp
.ne 2
.mk
.na
\fB\fBDAT_SUCCESS\fR\fR
.ad
.RS 22n
.rt  
The operation was successful.
.RE

.sp
.ne 2
.mk
.na
\fB\fBDAT_INVALID_HANDLE\fR\fR
.ad
.RS 22n
.rt  
The \fBcno_handle()\fR parameter is invalid.
.RE

.sp
.ne 2
.mk
.na
\fB\fBDAT_INVALID_STATE\fR\fR
.ad
.RS 22n
.rt  
Parameter in an invalid state. CNO is in use by an EVD instance or there is a thread blocked on it.
.RE

.SH USAGE
.sp
.LP
If there is a thread blocked in \fBdat_cno_wait\fR(3DAT), the Consumer can do the following steps to unblock the waiter:
.RS +4
.TP
.ie t \(bu
.el o
Create a temporary EVD that accepts software events. It can be created in advance.
.RE
.RS +4
.TP
.ie t \(bu
.el o
For a CNO with the waiter, attach that EVD to the CNO and post the software event on the EVD.
.RE
.RS +4
.TP
.ie t \(bu
.el o
This unblocks the CNO.
.RE
.RS +4
.TP
.ie t \(bu
.el o
Repeat for other CNOs that have blocked waiters.
.RE
.RS +4
.TP
.ie t \(bu
.el o
Destroy the temporary EVD after all CNOs are destroyed and the EVD is no longer needed.
.RE
.SH ATTRIBUTES
.sp
.LP
See \fBattributes\fR(5) for descriptions of the following attributes:
.sp

.sp
.TS
tab() box;
cw(2.75i) |cw(2.75i) 
lw(2.75i) |lw(2.75i) 
.
ATTRIBUTE TYPEATTRIBUTE VALUE
_
Interface StabilityCommitted
_
MT-LevelUnsafe
_
StandarduDAPL, 1.1, 1.2
.TE

.SH SEE ALSO
.sp
.LP
\fBdat_cno_wait\fR(3DAT), \fBlibdat\fR(3LIB), \fBattributes\fR(5)