Skip to content
Snippets Groups Projects
Commit 4d8cff28 authored by Danilo Piparo's avatar Danilo Piparo
Browse files

[MT] Do not inline methods of RWSpinLock guards

parent 4af9d200
No related branches found
No related tags found
No related merge requests found
......@@ -44,8 +44,8 @@ private:
TRWSpinLock &fLock;
public:
TRWSpinLockReadGuard(TRWSpinLock &lock) : fLock(lock) { fLock.ReadLock(); }
~TRWSpinLockReadGuard() { fLock.ReadUnLock(); }
TRWSpinLockReadGuard(TRWSpinLock &lock);
~TRWSpinLockReadGuard();
};
class TRWSpinLockWriteGuard {
......@@ -53,8 +53,8 @@ private:
TRWSpinLock &fLock;
public:
TRWSpinLockWriteGuard(TRWSpinLock &lock) : fLock(lock) { fLock.WriteLock(); }
~TRWSpinLockWriteGuard() { fLock.WriteUnLock(); }
TRWSpinLockWriteGuard(TRWSpinLock &lock);
~TRWSpinLockWriteGuard();
};
} // end of namespace ROOT
......
......@@ -110,3 +110,25 @@ void TRWSpinLock::WriteUnLock()
fCond.notify_all();
}
TRWSpinLockReadGuard::TRWSpinLockReadGuard(TRWSpinLock &lock) : fLock(lock)
{
fLock.ReadLock();
}
TRWSpinLockReadGuard::~TRWSpinLockReadGuard()
{
fLock.ReadUnLock();
}
TRWSpinLockWriteGuard::TRWSpinLockWriteGuard(TRWSpinLock &lock) : fLock(lock)
{
fLock.WriteLock();
}
TRWSpinLockWriteGuard::~TRWSpinLockWriteGuard()
{
fLock.WriteUnLock();
}
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment