diff options
Diffstat (limited to 'db/record.cpp')
-rw-r--r-- | db/record.cpp | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/db/record.cpp b/db/record.cpp index 51dc520..a8a3e43 100644 --- a/db/record.cpp +++ b/db/record.cpp @@ -112,7 +112,8 @@ namespace mongo { class Rolling { public: - Rolling() { + Rolling() + : _lock( "ps::Rolling" ){ _curSlice = 0; _lastRotate = Listener::getElapsedTimeMillis(); } @@ -126,8 +127,8 @@ namespace mongo { bool access( size_t region , short offset , bool doHalf ) { int regionHash = hash(region); - scoped_spinlock lk( _lock ); - + SimpleMutex::scoped_lock lk( _lock ); + static int rarely_count = 0; if ( rarely_count++ % 2048 == 0 ) { long long now = Listener::getElapsedTimeMillis(); @@ -174,7 +175,7 @@ namespace mongo { long long _lastRotate; Slice _slices[NumSlices]; - SpinLock _lock; + SimpleMutex _lock; } rolling; } |