摘要:
MVCC多版本是一个解决并发问题的模型,或者说是一种设计思路。 why MVCC? 如果有一份数据,无论它是存储在内存里还是磁盘上,当我们读取数据时可能有写操作正在修改它。传统思路就是将数据用一把锁保护起来: 读之前加读锁,这样就不会有写操作。 写之前加写锁,这样就不会有读操作和其他写操作。 如果数 阅读全文
摘要:
template< class... MutexTypes > class scoped_lock; (since c++17) 作用 同时持有一个或多个Mutex的RAII机制的mutex包装器,可以一次性获取多个mutex,避免发生死锁。 当scoped_lock创建,它将会尝试获取所有mute 阅读全文