RMThreadConfined

Objective-C

@protocol RLMThreadConfined <NSObject>

Swift

protocol RLMThreadConfined : NSObjectProtocol

RLMThreadConfinedに準拠する型のオブジェクトは Realm によって管理されるため、スレッド固有のRLMRealmインスタンスに関連付けられます。 管理対象オブジェクトをスレッド間で渡すには、明示的にエクスポートおよびインポートする必要があります。

このプロトコルに準拠するオブジェクトの管理対象インスタンスは、 +[RLMThreadSafeReference referenceWithThreadConfined:]コンストラクターにを渡すことで、スレッド間で転送されるためのスレッドセーフな参照に変換できます。

Realm によって定義された型のみがこのプロトコルに意味のあるものに準拠することができ、それに準拠しようとする新しいクラスを定義しても、 RLMThreadSafeReferenceでは動作しないことに注意してください。

  • オブジェクトを管理する Realm。オブジェクトが管理されていない場合はnil

    管理されていないオブジェクトはスレッドに制限されず、 RLMThreadConfinedオブジェクトを必要とするメソッドに渡すことができません。

    宣言

    Objective-C

    @property (nonatomic, readonly, nullable) RLMRealm *realm;

    Swift

    var realm: RLMRealm? { get }
  • オブジェクトが無効になったためアクセスできなくなっているかどうかを示します。

    宣言

    Objective-C

    @property (nonatomic, readonly, getter=isInvalidated) BOOL invalidated;

    Swift

    var isInvalidated: Bool { get }