关于加锁方式的疑问
LongTengYiFei opened this issue · comments
每次操作跳表都加锁,这是否会导致多线程排队执行(相当于单线程)。
delete和insert必须要加锁的,这里应该没有疑问。但问题是find没有加锁,可能导致读线程和写线程冲突,因此应该读时加读锁,写时加写锁的。
A tiny KV storage based on skiplist written in C++ language| 使用C++开发,基于跳表实现的轻量级键值数据库🔥🔥 🚀
LongTengYiFei opened this issue · comments
每次操作跳表都加锁,这是否会导致多线程排队执行(相当于单线程)。
delete和insert必须要加锁的,这里应该没有疑问。但问题是find没有加锁,可能导致读线程和写线程冲突,因此应该读时加读锁,写时加写锁的。