boost::stacktrace::stacktrace AND addr2line
Dear All, Thanks for outstanding quality of boost! I'm using the stacktrace object together with debug info and BOOST_STACKTRACE_USE_ADDR2LINE defined. Would it be possible to cache the output of addr2line assuming that during the lifetime of the calling process the queried executable or shared objects do not change? Thanks Peter
On Fri, Feb 9, 2024, 20:02 Foelsche, Peter via Boost-users < boost-users@lists.boost.org> wrote:
Dear All,
Thanks for outstanding quality of boost!
I’m using the stacktrace object together with debug info and *BOOST_STACKTRACE_USE_ADDR2LINE defined.*
*Would it be possible to cache the output of addr2line assuming that during the lifetime of the calling process the queried executable or shared objects do not change?*
You could do a generic cache that does not depend on the stacktrace implementation. Just make a unordered_map and map a stacktrace object to a string with decoded stacktrace. Or you could do a per-frame cache, mapping a frame to demangled name. Here's an example: https://github.com/userver-framework/userver/blob/develop/universal/src/logg...
*Thanks*
*Peter*
_______________________________________________ Boost-users mailing list Boost-users@lists.boost.org https://lists.boost.org/mailman/listinfo.cgi/boost-users
According to chatgpt the stracktrace object is only valid while the stack on which it has been allocated is still active and an allocation using new is not legal.
From: Antony Polukhin
participants (2)
-
Antony Polukhin
-
Foelsche, Peter