'\" t
.\" Manual page created with latex2man on Thu Aug 16 09:44:45 MDT 2007
.\" NOTE: This file is generated, DO NOT EDIT.
.de Vb
.ft CW
.nf
..
.de Ve
.ft R

.fi
..
.TH "\\_U\\_DYN\\_CANCEL" "3" "16 August 2007" "Programming Library " "Programming Library "
.SH NAME
_U_dyn_cancel
\-\- cancel unwind\-info for dynamically generated code 
.PP
.SH SYNOPSIS

.PP
#include <libunwind.h>
.br
.PP
void
_U_dyn_cancel(unw_dyn_info_t *di);
.br
.PP
.SH DESCRIPTION

.PP
The _U_dyn_cancel()
routine cancels the registration of the 
unwind\-info for a dynamically generated procedure. Argument di
is the pointer to the unw_dyn_info_t
structure that 
describes the procedure\&'s unwind\-info. 
.PP
The _U_dyn_cancel()
routine is guaranteed to execute in 
constant time (in the absence of contention from concurrent calls to 
_U_dyn_register()
or _U_dyn_cancel()).
.PP
.SH THREAD AND SIGNAL SAFETY

.PP
_U_dyn_cancel()
is thread\-safe but \fInot\fP
safe to use 
from a signal handler. 
.PP
.SH SEE ALSO

.PP
libunwind\-dynamic(3),
_U_dyn_register(3)
.PP
.SH AUTHOR

.PP
David Mosberger\-Tang
.br
Email: \fBdmosberger@gmail.com\fP
.br
WWW: \fBhttp://www.nongnu.org/libunwind/\fP\&.
.\" NOTE: This file is generated, DO NOT EDIT.
