knightonline/server/shared/RWLock.h

19 lines
273 B
C++

#pragma once
#include "Condition.h"
class RWLock
{
public:
RWLock();
void AcquireReadLock();
void ReleaseReadLock();
void AcquireWriteLock();
void ReleaseWriteLock();
private:
Condition _cond;
volatile unsigned int _readers;
volatile unsigned int _writers;
};