编程语言您现在的位置是:首页 > 博客日志 > 编程语言

mingw64安装 exception的三个选项 dwarf sjlj seh

<a href='mailto:'>微wx笑</a>的头像微wx笑 2022-01-20编程语言 9 0关键字:   

在C++中有 try..throw..catch,当它执行这种结构时,它需要保存现场还原现场,而 sjlj, seh, dwarf 正是实现这类过程的三种方式。sjlj 全称是 SetJump LongJump,前者设还原点,后者

在C++中有 try..throw..catch,当它执行这种结构时,它需要保存现场还原现场,而 sjlj, seh, dwarf 正是实现这类过程的三种方式。HWf无知

sjlj 全称是 SetJump LongJump,前者设还原点,后者跳到还原点。HWf无知

seh 是 Borland 公司的,微软买了其专利使用权,它利用了FS段寄存器,将还原点压入,收到异常时弹出。HWf无知

相较而言,sjlj 是 C 标准库就有的东西,seh 在 2014 年前是有专利的,从性能上说 seh 比 sjlj 快。HWf无知

dwarf 我是在开源平台 MinGW 见到这名称,因为专利原因 MinGW 以前并不支持 seh,也许是为了保证性能,它又提供了 dwarf 这种方式。HWf无知



作者:三眼卡夫卡a
链接:https://www.jianshu.com/p/fd939d30ec97
来源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。


HWf无知

本文为转载文章,版权归原作者所有,不代表本站立场和观点。

很赞哦! () 有话说 ()

相关文章