可重入锁和不可重入锁
程序员文章站
2024-01-08 11:39:34
...
- 可重入锁,线程可以再次进入它已经获得的锁,在同一线程内的如下操作并不会造成死锁。但是,加多少次锁就得释放多少次。
lock.Lock();
lock.Lock(); // 这一步可重入锁允许,不可重入锁不允许。
lock.unLock();
lock.unLock();
- 不可重入锁,线程无法再次进入它已经获得的所,在同一线程的如上操作会造成死锁。