私です。
将来に向けて厳しくした Xcode 設定でのどうなるかの検証です。
サンプルコード。
最もよくある非同期処理のパターンの一つだと思います。
ただ WEB リクエストしてそれを表示するやつ。
👉 【SwiftUI】シンプルに HTTPリクエスト でお天気情報取得
どうなるか。
🧑🏻💻 Passing argument of non-sendable type 'Requester' outside of main actor-isolated context may introduce data races
一応、動きますが。
こんな警告でました。
Passing argument of non-sendable type 'Requester' outside of main actor-isolated context may introduce data races
なんなんですかね。
なんかおかしいですか。
🧑🏻💻 Non-final class 'Requester' cannot conform to 'Sendable'; use '@unchecked Sendable'
無邪気に Sendable
を継承します。
一行のみの変更です。
class Requester: Sendable {
Non-final class 'Requester' cannot conform to 'Sendable'; use '@unchecked Sendable'
と出ました。
よって、結局、以下の2つのどちらかで警告は消えます。
final class Requester: Sendable {
class Requester: @unchecked Sendable {
ここら辺でこれだけつまずいてるのだけども。
👉 Sendable | Apple Developer Documentation
🤔 気持ち悪さ
よくこの @Observable クラスが、
いわゆる「MVVM でいうところの ModelView」
となってるコードをよく見かけます。
これが「アクター境界」を越えていいの ?
🤔 関連記事