50万奖金+官方证书,深圳国际金融科技大赛正式启动,点击报名 了解详情
写点什么

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:004764

评论

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

软件测试 |人工智能引领未来学习趋势——ChatGPT智能学习助手

测吧(北京)科技有限公司

测试

软件测试 |人工智能数据生成,ChatGPT引领测试新风潮

测吧(北京)科技有限公司

测试

Util应用框架开发环境搭建(八)- 安装 Seq

何镇汐

开源 后端 软件开发 .net core

高性能、无界限:选择国外服务器的原因和技巧

一只扑棱蛾子

国外服务器

罗拉Rola-IP海外住宅IP简介:全球互联网接入的另一面

Geek_ccdd7f

罗拉rola-ip详细解析HTTP协议连接与服务器

Geek_ccdd7f

罗拉rola-ip为您详解HTTP网络通信的标准语言解析

Geek_ccdd7f

如何挑选挑选到优质的HTTP代理平台呢?

Geek_ccdd7f

IP代理如何助力你的营销业务?如何选择?

Geek_ccdd7f

深度长文:全面探讨流程图的应用,打开你的新视野

职场工具箱

流程图绘制工具

告别繁琐,ModelArts一键解决车牌号识别难题

华为云开发者联盟

人工智能 华为云 华为云ModelArts 华为云开发者联盟

以程序员的身份使用curl获取速卖通详情

Noah

数字孪生协同仿真:复杂电机篇

DevOps和数字孪生

数字孪生 电机 仿真建模

MySQL索引入门

互联网工科生

MySQL 数据库

全方位探索:思维导图能在这些地方派上用场!

职场工具箱

思维导图 工具库

媒体行业的3D建模:在影视中创造特效纹理

3D建模设计

AI纹理 影视视觉特效 3D特效

Codewhisperer 使用评价

亚马逊云科技 (Amazon Web Services)

Python 人工智能 云上探索实验室 Amazon CodeWhisperer Amazon Cloud9

YOLO 施工安全帽目标检测模型

3D建模设计

目标检测 YOLO模型 安全帽模型

详解数据库SQL中的三个语句:DROP、TRUNCATE 、DELETE

华为云开发者联盟

数据库 后端 华为云 华为云GaussDB 华为云开发者联盟

人工智能 | 开启智慧学习新时代—与AI对话,高效提升学习效率

测吧(北京)科技有限公司

测试

2023开源产业生态大会OpenHarmony生态分论坛开幕在即

新消费日报

Util应用框架开发环境搭建(九)- 安装 Exceptionless

何镇汐

开源 后端 .net core

HTTP方法罗拉rola-ip全面解读

Geek_ccdd7f

可怕!.Net 8正式发布了,.Net野心确实不小!

不在线第一只蜗牛

.net 编程语言

【2023云栖】郭瑞杰:阿里云搜索产品智能化升级

阿里云大数据AI技术

搜索引擎

软件测试/测试开发丨人工智能产品质量保障:挑战与创新

测试人

人工智能 软件测试

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