golang sync.Cond实现读写锁
直接上代码:
package mainimport ("fmt""sync""time"
)// RWLock 实现一个简单的读写锁
type RWLock struct {readerCount int // 当前正在读取的读者数量writerCount int // 当前正在写的写者数量mutex sync.Mutex // 保护锁的状态readCond *sync.Cond
直接上代码:
package mainimport ("fmt""sync""time"
)// RWLock 实现一个简单的读写锁
type RWLock struct {readerCount int // 当前正在读取的读者数量writerCount int // 当前正在写的写者数量mutex sync.Mutex // 保护锁的状态readCond *sync.Cond