写点什么

Swift 5.9 Backtracer 实现并发感知,并改进可靠性和 Linux 支持

  • 2023-12-19
    北京
  • 本文字数:715 字

    阅读完需:约 2 分钟

Swift 5.9 Backtracer 实现并发感知,并改进可靠性和 Linux 支持

除了通过宏和借用式内存管理扩展语言之外,Swift 5.9 还引入了一些有用的程序调试功能,包括进程外崩溃处理程序、即时调试支持和回溯,旨在简化使用结构化并发时的控制流解释。


进程外崩溃处理是一个非常强大的新功能,它通常可以防止程序崩溃,并让你可以检查程序或为其附加调试器。


当启用了这个新特性的程序崩溃时,你会看到一个提示,让你可以更改回溯设置,生成新的回溯,列出加载的图像,显示寄存器和内存内容,并获得进程中所有线程的列表。或者,你可以将调试器附加到崩溃的进程并交互式地检查其状态。如果你不选择任何选项,那么程序将在 30 秒或预先配置好的时间后崩溃。


进程外崩溃处理程序对 Linux 开发人员来说特别重要,因为他们习惯于在控制台中获得程序崩溃的简明错误消息,而不是借助任何其他额外的工具。为此,在 Linux 上,崩溃处理程序是默认开启的,而在 macOS 上则必须手动启用。这个新功能尚未提供 Windows 支持,但是开发者可以访问操作系统内置的崩溃报告来获取导致崩溃的其他信息。


另一项备受欢迎的改进是回溯器现在具备了并发感知能力。也就是说,它能够通过异步帧进行回溯,例如当 async 函数通过 await 语句执行时。在这种情况下,await/async 调用在回溯中和普通调用没什么不一样,并不会显示属于运行时 await/async 机制的过渡帧。不过,这个新功能要求回溯器能够查找程序符号来判断一个帧是否是异步的。


最后需要说明的是,为了提高可靠性,Swift 5.9 中的新回溯器允许你配置回溯器将生成的最大帧数以及你想要显示的堆栈顶部的帧数。此外,在默认情况下,它会跳过系统帧和 Swift thunk,应用程序开发人员很少对这些内容感兴趣。


原文链接:

https://www.infoq.com/news/2023/11/swift-5-9-backtracer-debugger/

2023-12-19 08:004653

评论

发布
暂无评论
发现更多内容

软件测试|pyecharts绘制NBA球星得分能力对比图

霍格沃兹测试开发学社

数字孪生 重塑世界 ——2023飞渡科技数字孪生行业研讨会深圳站圆满成功

极客天地

Health Kit接入资质要求详解,开发不迷路!

HarmonyOS SDK

HMS Core

软件测试|码农必会的git操作(一)

霍格沃兹测试开发学社

为何 DevOps 会给开发人员带来压力和倦怠?

SEAL安全

DevOps 策略 企业号10月PK榜 缺点

释放浏览器潜力:Web Scheduler 背后的系统性能提升

Geek_ianp87

前端 性能 浏览器 js 前端框架

用友BIP,赋能被动元器件行业

用友BIP

数智化转型

技术筑生态,智联赢未来 第二届OpenHarmony技术大会即将在京启幕

科技热闻

这场研讨会硬件工程师不要错过

华秋电子

VMware Workstation 17安装教程之创建虚拟机

小齐写代码

软件测试|Pytest必会技巧(四)使用autouse实现自动传参

霍格沃兹测试开发学社

华秋带您走进新一代产业园电子电路主题展

华秋电子

如何平衡表单设计过程中用户体验与企业管控需求(上)

用友BIP

财务共享

“PO高阶精进课程” 12月16-17日 · A-CSPO认证周末班【提前报名特惠】

ShineScrum

国外服务器使用经验分享:这些小技巧让你轻松上手

一只扑棱蛾子

国外服务器

降本增效的集成平台

RestCloud

ipaas

如何获取私有云硬加密License授权

矩视智能

深度学习 私有云 机器视觉

软件测试|教你用skip灵活跳过用例

霍格沃兹测试开发学社

软件测试|Python操作Excel制作报表,不要太方便

霍格沃兹测试开发学社

软件测试|必须遵循的UI自动化设计军规

霍格沃兹测试开发学社

Swift 5.9 Backtracer 实现并发感知,并改进可靠性和 Linux 支持_Android/iOS_Sergio De Simone_InfoQ精选文章