X-Git-Url: http://plrg.eecs.uci.edu/git/?p=libcds.git;a=blobdiff_plain;f=test%2Fstress%2Fsequential%2Fsequential-misc%2Frwlock_driver.cpp;h=ab9ca0a7aca4d61949edbb6fd62a6c23147fce14;hp=aee9463ab7821bf2f6f6830fbfb5feaad21472af;hb=6ec1165b0c929f8b4c7d4f7a0ff79a4126b4947e;hpb=28eb2ae5ccef5f6871c1a82df7e969d333a33d02 diff --git a/test/stress/sequential/sequential-misc/rwlock_driver.cpp b/test/stress/sequential/sequential-misc/rwlock_driver.cpp index aee9463a..ab9ca0a7 100644 --- a/test/stress/sequential/sequential-misc/rwlock_driver.cpp +++ b/test/stress/sequential/sequential-misc/rwlock_driver.cpp @@ -20,7 +20,6 @@ class RWLockTest : public cds_test::stress_fixture { protected: static size_t sum; static size_t x; - static RWLock *rwlock; static void SetUpTestCase() { cds_test::config const &cfg = get_config("SequentialMisc"); @@ -28,7 +27,7 @@ protected: GetConfig(RWLockPassCount); } - static void ReaderWriterThread(int write_percentage) { + static void ReaderWriterThread(RWLock *rwlock, int write_percentage) { for (size_t i = 0; i < s_nRWLockPassCount; i++) { if (rand(100) < write_percentage) { if (rwlock->read_can_lock()) { @@ -61,12 +60,11 @@ protected: size_t RWLockTest::x; size_t RWLockTest::sum; -RWLock *RWLockTest::rwlock; TEST_F(RWLockTest, ReadWriteLock) { - rwlock = new RWLock(); + std::unique_ptr rwlock(new RWLock()); for (int write_percentage = 5; write_percentage < 40; write_percentage += 5) { - ReaderWriterThread(write_percentage); + ReaderWriterThread(rwlock.get(), write_percentage); } }