* Got rid of the duplicated functionalities provided by RWLocker.cpp, and

Locker.cpp.
* The services are now using recursive_locks, and rw_locks instead.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33548 a95241bf-73f2-0310-859d-f6bbb57e9c96
This commit is contained in:
Axel Dörfler
2009-10-12 14:29:05 +00:00
parent 4baa865937
commit b74a098352
12 changed files with 53 additions and 1125 deletions
@@ -5,10 +5,12 @@
#ifndef _K_DISK_DEVICE_H
#define _K_DISK_DEVICE_H
#include <OS.h>
#include <lock.h>
#include "KPartition.h"
#include "RWLocker.h"
namespace BPrivate {
@@ -36,10 +38,8 @@ public:
// manager lock owners can be sure, that it won't change.
bool ReadLock();
void ReadUnlock();
bool IsReadLocked(bool orWriteLocked = true);
bool WriteLock();
void WriteUnlock();
bool IsWriteLocked();
virtual void SetID(partition_id id);
@@ -92,7 +92,7 @@ private:
void _UpdateDeviceFlags();
disk_device_data fDeviceData;
RWLocker fLocker;
rw_lock fLocker;
int fFD;
status_t fMediaStatus;
};