Avatar
Actorの初学者です、もしどなたかわかりましたら.. iOS17で使える MainActor.assertIsolated() で以下のようなコードを書いた時に、 自分の理解では Task の処理は Actor Context を引き継いで MainActor で実行されると考えていたのですが、 Taskに入った瞬間にクラッシュします、明示的な MainActor などの付与が無い限り Actor Context は存在しないという理解であっていそうでしょうか? func request<T>(_ request: T) -> Single<T.Response> { return Single.create { single in if #available(iOS 17.0, *) { // ここではクラッシュしない MainActor.assertIsolated() } let task = Task { if #available(iOS 17.0, *) { // ここはクラッシュする Thread 14: Fatal error: Incorrect actor executor assumption; Expected 'UnownedSerialExecutor(executor: (Opaque Value))' executor. MainActor.assertIsolated() } ... (edited)