为ling::shared_mutex添加setResource
This commit is contained in:
34
main.cpp
34
main.cpp
@@ -43,28 +43,25 @@ public:
|
||||
|
||||
TEST(资源管理, 1) {
|
||||
auto mutex = ling::shared_mutex<mutex_test>(mutex_test());
|
||||
mutex.setResource(mutex_test());
|
||||
|
||||
auto ptr = std::make_shared<mutex_test>();
|
||||
{
|
||||
auto ptr = std::make_shared<mutex_test>(); {
|
||||
auto lock = mutex.lock();
|
||||
lock->test();
|
||||
lock->test_const();
|
||||
}
|
||||
{
|
||||
} {
|
||||
auto shared = mutex.lock_shared();
|
||||
auto shared2 = mutex.lock_shared();
|
||||
shared->test_const();
|
||||
shared2->test_const();
|
||||
}
|
||||
{
|
||||
} {
|
||||
auto lock = mutex.try_lock();
|
||||
ASSERT_TRUE(lock);
|
||||
auto lock_2 = mutex.try_lock();
|
||||
ASSERT_FALSE(lock_2);
|
||||
auto lock_3 = mutex.try_lock_shared();
|
||||
ASSERT_FALSE(lock_3);
|
||||
}
|
||||
{
|
||||
} {
|
||||
auto lock = mutex.try_lock_shared();
|
||||
ASSERT_TRUE(lock);
|
||||
auto lock_2 = mutex.try_lock();
|
||||
@@ -83,7 +80,6 @@ TEST(排序, 堆排序测试) {
|
||||
list.reserve(DATA_SIZE);
|
||||
std::uniform_int_distribution<> dis(1, DATA_SIZE * 10);
|
||||
for (int i = 0; i < DATA_SIZE; i++) {
|
||||
|
||||
list.push_back(dis(gen));
|
||||
}
|
||||
StartStating(start);
|
||||
@@ -114,15 +110,15 @@ TEST(红黑树, 插入测试) {
|
||||
/*for (int i = 0; i < 3000; i++) {
|
||||
vec.push_back(dist(gen));
|
||||
}*/
|
||||
vec.push_back(0x2e27b3d26bc); //1 317
|
||||
vec.push_back(0x6ff71223ecc); //2 769
|
||||
vec.push_back(0x2d69a2c3138); //3 312
|
||||
vec.push_back(0x2de3d825c0); //4 197
|
||||
vec.push_back(0x1ecd65c2c5); //5 132
|
||||
vec.push_back(0x77561e1ec5e); //6 820
|
||||
vec.push_back(0xeb31b2ddab); //7 101
|
||||
vec.push_back(0x98b4038275); //8 655
|
||||
vec.push_back(0x16243d02489); //9 152
|
||||
vec.push_back(0x2e27b3d26bc); //1 317
|
||||
vec.push_back(0x6ff71223ecc); //2 769
|
||||
vec.push_back(0x2d69a2c3138); //3 312
|
||||
vec.push_back(0x2de3d825c0); //4 197
|
||||
vec.push_back(0x1ecd65c2c5); //5 132
|
||||
vec.push_back(0x77561e1ec5e); //6 820
|
||||
vec.push_back(0xeb31b2ddab); //7 101
|
||||
vec.push_back(0x98b4038275); //8 655
|
||||
vec.push_back(0x16243d02489); //9 152
|
||||
for (unsigned long i: vec) {
|
||||
tree.insert(i);
|
||||
}
|
||||
@@ -270,4 +266,4 @@ TEST(位图, 位图测试) {
|
||||
bitmap.clear(20);
|
||||
for (int i = 0; i < bitmap.getSize(); i++)
|
||||
ASSERT_FALSE(bitmap.test(i));
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user