Xcode 13 Beta出现Main actor隔离类与非隔离父类不一致报错
Xcode 13 beta 4/5 构建Actor隔离报错解决方案
升级到Xcode 13 beta 4、beta 5版本后,构建项目时可能出现如下报错:
Main actor-isolated class 'My Class' has different actor isolation from nonisolated superclass 'My Super Class'
即便代码中没有主动使用actors,也可能触发该报错。
触发场景
对引入包内的类做普通协议扩展时会触发该问题,复现代码如下:
protocol Test { var test: String? { get } } extension ImagePIX: Test { var test: String? { nil } }
临时修复方法
给协议添加@MainActor前缀即可解决该问题:
@MainActor protocol Test { // 原有协议定义 }
官方修复说明
该问题已在Xcode 13 RC版本中修复,升级到该版本及以上的Xcode即可直接规避该问题。
内容的提问来源于stack exchange,提问作者Heestand XYZ
相关产品推荐
相关产品推荐

