/// <summary>Initializes a new instance of the <see cref="ValueReaderWriterLock" /> struct.</summary>
    public ValueReaderWriterLock()
    {
        var value = Allocate <SRWLOCK>();

        InitializeSRWLock(value);
        _value = value;
    }
예제 #2
0
    /// <summary>Initializes a new instance of the <see cref="ValueMutex" /> struct.</summary>
    public ValueMutex()
    {
        var value = Allocate <SRWLOCK>();

        InitializeSRWLock(value);
        _value = value;
    }
예제 #3
0
 public static extern byte TryAcquireSRWLockShared([NativeTypeName("PSRWLOCK")] SRWLOCK *SRWLock);
예제 #4
0
 public static extern byte TryAcquireSRWLockExclusive([NativeTypeName("PSRWLOCK")] SRWLOCK *SRWLock);
예제 #5
0
 public static extern void ReleaseSRWLockShared([NativeTypeName("PSRWLOCK")] SRWLOCK *SRWLock);
예제 #6
0
 public static extern void ReleaseSRWLockExclusive([NativeTypeName("PSRWLOCK")] SRWLOCK *SRWLock);
예제 #7
0
 public static extern void InitializeSRWLock([NativeTypeName("PSRWLOCK")] SRWLOCK *SRWLock);