stack-unwinding

stack-unwinding

文章 0 浏览 4

PHP 类构造函数中的范围展开

我正在学习 PHP 类和异常,并且来自 C++ 背景,以下内容让我觉得很奇怪: 当派生类的构造函数抛出异常时,基类的析构函数似乎不会自动运行: class Ba…

自在安然 2024-12-05 10:42:48 2 0

SIGSEGV 上的 mips _Unwind_Backtrace

在 mips 平台上,我正在尝试进行 Unwind 工作。目前,如果我手动发出 print_trace 堆栈跟踪正确显示如下: backtrace_helper 0x4b6958 backtrace_help…

往日情怀 2024-11-14 15:53:59 4 0

如何在 SIGSEGV 上使用 _Unwind_Backtrace 获取 fullstacktrace

我通过代码处理 SIGSEGV: int C() { int *i = NULL; *i = 10; // Crash there } int B() { return C(); } int A() { return B(); } int main(void) {…

抠脚大汉 2024-11-13 08:44:02 4 0

C++从析构函数抛出异常

这不是从析构函数抛出异常是否安全的问题。 http://www.parashift.com/c++-faq-lite /exceptions.html#faq-17.9 状态: “在堆栈展开期间,所有这些堆…

同展鸳鸯锦 2024-11-03 09:14:53 3 0

RAII 和堆栈展开

直到我对 RAII 和 RAII 的“相互缠绕”(因为缺乏更好的词)的概念为止。堆栈展开是完全(如果不是完全)错误的。我的理解是,使用 RAII 可以防止任何…

月寒剑心 2024-10-30 05:08:37 3 0

dwarf2 中的堆栈展开

我不明白 dwarf2 中的堆栈展开如何确保在一些非常基本的 ABI(应用程序二进制接口)场景中参数的可靠恢复。考虑 ABI,它规定前三个参数必须位于寄存器…

爱的故事 2024-10-20 22:27:53 5 0

抛出一个 boost::shared_ptr<自定义异常>

是否存在以下任何陷阱; if (someCondition) throw boost::shared_ptr( new SomeException( "foo!" ) ); ... catch( const boost::shared_ptr& expRef…

云巢 2024-10-20 14:21:08 5 0

如何在没有 catch/try/raise 的情况下展开(多级返回)堆栈?

当 catch/try 不可用时(即我要展开的代码不受我的控制),我想将堆栈展开到任意级别。这可能吗? 例如,在测试中,我想让我的测试调用一个检查先决条…

弃爱 2024-10-17 21:37:22 6 0

如何在 i386 FreeBSD 上构建 libunwind?

libunwind 在 FreeBSD 8.1 amd64 上作为软件包 (pkg_add -r libunwind) 提供。 它在 FreeBSD 8.1 i386 上不可用。 当我从 http://www.nongnu.org/libu…

若有似无的小暗淡 2024-09-30 01:10:05 10 0

C++ 中的堆栈展开使用Lua时

我最近偶然发现了这个 C++/Lua 错误 int function_for_lua( lua_State* L ) { std::string s("Trouble coming!"); /* ... */ return luaL_error(L,"so…

峩卟喜欢 2024-09-28 22:13:47 7 0

如何检测析构函数中的堆栈展开

我有一个简单的 C++ 对象,在函数 F() 的开头创建,以确保在 F(),通过使用对象的构造函数和析构函数。但是,我不希望在 F() 体内抛出异常时撤消操作…

攒一口袋星星 2024-09-28 20:09:09 5 0

当语言不支持析构函数时如何对堆栈展开做出反应?

假设您已经创建了 Window 类的实例。该窗口显示给用户。然后,抛出异常,并且对实例的引用丢失,但用户仍然可以看到该窗口,因为该实例仍然存在(只是…

顾冷 2024-09-26 22:31:14 7 0

停止调试时堆栈是否会展开?

只是好奇我的析构函数是否被调用。 (特别是对于 Visual Studio,当您点击红色停止按钮时)…

寻梦旅人 2024-09-01 06:58:16 8 0

Gnu 汇编器 (GAS) 中的 CFI 指令有何用途?

每行后面似乎都有一个 .CFI 指令,而且还有各种各样的指令,例如 .cfi_startproc 、 .cfi_endproc 等。 更多信息。 .file "temp.c" .text .globl main…

御弟哥哥 2024-08-26 23:40:47 11 0

.Net - 什么是“放松”?

在回答这个 问题 我注意到在处理异常时尝试移动“光标”时出现以下对话框: 无法将下一条语句设置到此位置。尝试展开调用堆栈失败。 在以下情况下无法…

爱你不解释 2024-08-17 00:40:09 9 0
更多

推荐作者

胡图图

文章 0 评论 0

zt006

文章 0 评论 0

z祗昰~

文章 0 评论 0

冰葑

文章 0 评论 0

野の

文章 0 评论 0

天空

文章 0 评论 0

    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文