/// <summary> /// Acquire read permission. /// </summary> public void AcquireReader() { // Only allow a single thread through at a time by using a turnstile system _turnStile.Acquire(); _turnStile.Release(); // Acquire the Switch object, which governs controls over the write permission Mutex _readPermission.Acquire(); }