Swift 6.2 引入了易于理解的并发机制,以简化并发编程。

H3:[Swift Approachable Concurrency 介绍]
在 WWDC25 开发者大会上宣布,Swift Approachable Concurrency 是 Swift 6.2 的新特性,旨在简化移动应用中最常见用例的并发编程。

H3:启用可访问并发的影响
能使 Swift 编译器更可预测,减少生成的错误和警告数量,避免因这些问题导致的困扰(如与代码实际问题无关的情况)。

H3:底层原理
引入两个新的编译器标志:[推断隔离一致性]和默认强制非隔离(非发送)

H3:隔离一致性相关

  • 引入隔离一致性概念,将类型的一致性限制在符合类型的相同隔离域中。
  • @MainActorMyModelType符合Equatable,声明中明确隔离域可避免运行时错误,否则可能在不同执行器中调用时出错。
  • 新的推断隔离一致性特性可免除程序员显式限制对Equatable的一致性。

H3:非隔离(非发送)相关
强制非隔离异步函数默认在调用执行器上运行,而非全局执行器,统一了非async 非隔离函数的行为。

H3:与其他并发特性一起引入
伴随另一个重要并发特性:默认使用主执行器,强制所有函数在主执行器上运行,除非程序员明确指示。

H3:开发者反应及讨论
许多 Swift 开发者发现采用 Swift 6 严格并发模型引发诸多问题,引发对[Swift 6 并发是否推进过快]的讨论,认为语言、生态系统和文档未完全准备好就推进并发给开发者带来困扰,且对于更简单的移动应用来说推进过远,多数 iOS 和 iPadOS 应用主要在主线程运行,只有少数任务在后台运行以保持 UI 响应。

H3:相关人士观点
如 Donny Wals 所述,在 Xcode 26 创建的新项目中默认在主执行器上运行代码,可使可访问并发实现其承诺,消除某些因编译器错误导致的奇怪修复。

H3:总结
可访问并发和默认主执行器使用是旨在简化并发编程的几个新特性中的两个,将在后续 Xcode 26 测试版中逐步发布,根据 Swift 团队的[官方愿景文档]。

阅读 71
0 条评论