_U_DYN_CANCEL(3libunwind)
π _U_DYN_CANCEL β cancel unwind-info for dynamically generated code π
okay bestie, welcome to the libunwind corner of the manual pages (it's 3libunwind, iykyk) and today we're talking about _U_dyn_cancel π
β¨ NAME β¨
_U_dyn_cancel β cancel unwind-info for dynamically generated code π¦
πΈ SYNOPSIS πΈ
#include <libunwind.h>
void _U_dyn_cancel(unw_dyn_info_t *di);
π DESCRIPTION π
So like, the _U_dyn_cancel() routine cancels the registration of the unwind info for a dynamically generated procedure. That's the whole vibe. You're telling libunwind "bestie, we're done here, take it off the books" π
The argument di is the pointer to the unw_dyn_info_t structure that describes the procedure's unwind-info. That's your pointer, the one describing the thing, don't lose it π
And here's the iconic part: the _U_dyn_cancel() routine is guaranteed to execute in constant time β but only in the absence of contention from concurrent calls to _U_dyn_register() or _U_dyn_cancel(). No cap, that's the actual guarantee, and it's giving main character energy β
π«Ά fr fr, remember that little parenthetical: constant time only holds when nobody else is out here hammering_U_dyn_register()or_U_dyn_cancel()at the same time. Concurrent calls = contention = not the chill constant-time moment you wanted.
π THREAD AND SIGNAL SAFETY π
_U_dyn_cancel()is thread safe β- but it is not safe to use from a signal handler π
so go ahead and call it from your threads, just not from inside a signal handler, okay? that's the rule, periodt π
π¦ SEE ALSO π¦
π AUTHOR π
David Mosberger-Tang
- Email:
dmosberger@gmail.com - WWW:
http://www.nongnu.org/libunwind/
and that's the whole page bestie, no crumbs left π this lil slice of the Programming Library is dated 29 August 2023, and yes the original header said _U_DYN_CANCEL(3libunwind) and the footer said the same β consider yourself fully briefed πβ¨ππ¦πΈ
π¦ where this page comes from
- debian trixie: libunwind-dev 1.8.1-0.1 Β· MIT
- ubuntu questing: libunwind-dev 1.8.1-0.1ubuntu1
- ubuntu resolute: libunwind-dev 1.8.3-0ubuntu1 Β· MIT
- ubuntu stonking: libunwind-dev 1.8.3-0ubuntu1 Β· MIT
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms