public static IntPtr ResolveFromReference(ThreadSafeReferenceHandle referenceHandle) { var result = NativeMethods.resolve_realm_reference(referenceHandle, out var nativeException); nativeException.ThrowIfNecessary(); return(result); }
internal ThreadSafeReference(IThreadConfined value, Type type) { if (value == null) { throw new ArgumentNullException(nameof(value)); } if (!value.IsManaged) { throw new RealmException("Cannot construct reference to unmanaged object, which can be passed across threads directly."); } if (!value.IsValid) { throw new RealmException("Cannot construct reference to invalidated object."); } Handle = value.Handle.GetThreadSafeReference(); Metadata = value.Metadata; ReferenceType = type; }
public static extern IntPtr resolve_query_reference(SharedRealmHandle sharedRealm, ThreadSafeReferenceHandle referenceHandle, out NativeException ex);
public static extern IntPtr resolve_realm_reference(ThreadSafeReferenceHandle referenceHandle, out NativeException ex);