summaryrefslogtreecommitdiffstats
path: root/util/system/rwlock_ut.cpp
diff options
context:
space:
mode:
authoreeight <[email protected]>2022-05-19 23:51:39 +0300
committereeight <[email protected]>2022-05-19 23:51:39 +0300
commitd98cd6128e8838e19ae1a95be34385af299dd62a (patch)
tree2c3a778d7d8edf24ee8855beda0def8742bc6722 /util/system/rwlock_ut.cpp
parentb6eecf2aaed456793a9f0e559af11e63bace7e60 (diff)
IGNIETFERRO-1105 Get rid of TAtomic in unittests
ref:f4d9cf527b4f26efcc95307ca7b07d1c42ebd11b
Diffstat (limited to 'util/system/rwlock_ut.cpp')
-rw-r--r--util/system/rwlock_ut.cpp34
1 files changed, 14 insertions, 20 deletions
diff --git a/util/system/rwlock_ut.cpp b/util/system/rwlock_ut.cpp
index 2b384c05b3d..5dd225af678 100644
--- a/util/system/rwlock_ut.cpp
+++ b/util/system/rwlock_ut.cpp
@@ -1,11 +1,12 @@
#include "rwlock.h"
-#include "atomic.h"
#include <library/cpp/testing/unittest/registar.h>
#include <util/thread/pool.h>
#include <util/random/random.h>
+#include <atomic>
+
class TRWMutexTest: public TTestBase {
UNIT_TEST_SUITE(TRWMutexTest);
UNIT_TEST(TestReaders)
@@ -13,17 +14,10 @@ class TRWMutexTest: public TTestBase {
UNIT_TEST_SUITE_END();
struct TSharedData {
- TSharedData()
- : writersIn(0)
- , readersIn(0)
- , failed(false)
- {
- }
-
- TAtomic writersIn;
- TAtomic readersIn;
+ std::atomic<size_t> writersIn = 0;
+ std::atomic<size_t> readersIn = 0;
- bool failed;
+ bool failed = false;
TRWMutex mutex;
};
@@ -53,11 +47,11 @@ class TRWMutexTest: public TTestBase {
void RunReaders() {
Data_.mutex.AcquireRead();
- AtomicIncrement(Data_.readersIn);
+ ++Data_.readersIn;
usleep(100);
- FAIL_ASSERT(Data_.readersIn == long(Total_));
+ FAIL_ASSERT(Data_.readersIn.load() == Total_);
usleep(100);
- AtomicDecrement(Data_.readersIn);
+ --Data_.readersIn;
Data_.mutex.ReleaseRead();
}
@@ -67,10 +61,10 @@ class TRWMutexTest: public TTestBase {
for (size_t i = 0; i < 10; ++i) {
Data_.mutex.AcquireRead();
- AtomicIncrement(Data_.readersIn);
- FAIL_ASSERT(Data_.writersIn == 0);
+ ++Data_.readersIn;
+ FAIL_ASSERT(Data_.writersIn.load() == 0);
usleep(RandomNumber<ui32>() % 5);
- AtomicDecrement(Data_.readersIn);
+ --Data_.readersIn;
Data_.mutex.ReleaseRead();
}
@@ -78,10 +72,10 @@ class TRWMutexTest: public TTestBase {
for (size_t i = 0; i < 10; ++i) {
Data_.mutex.AcquireWrite();
- AtomicIncrement(Data_.writersIn);
- FAIL_ASSERT(Data_.readersIn == 0 && Data_.writersIn == 1);
+ ++Data_.writersIn;
+ FAIL_ASSERT(Data_.readersIn.load() == 0 && Data_.writersIn.load() == 1);
usleep(RandomNumber<ui32>() % 5);
- AtomicDecrement(Data_.writersIn);
+ --Data_.writersIn;
Data_.mutex.ReleaseWrite();
}