共享锁(读锁)和排他锁(写锁)

简介: 共享锁(读锁)和排他锁(写锁)

一、共享锁(读锁):

共享锁允许多个线程同时获取锁,并发访问共享资源。共享锁是一种乐观锁,允许多个执行读操作的线程同时访问共享资源。

二、排它锁(写锁):

排它锁也叫独占锁,在这种情况下每次只能有一个线程获得锁。独占锁是一种悲观保守的加锁策略,如果某个只读线程获取锁,则其他读线程都只能等待锁的释放,这样就避免了不必要的并发性,因为读操作不会影响数据的一致性。

相关文章
|
2月前
|
关系型数据库 MySQL 数据库管理
✅什么是排他锁、共享锁、意向锁
共享锁(读锁)允许并发读取数据,阻止修改;排他锁(写锁)则允许读取和修改,排斥其他锁。在MySQL中,`SELECT ... LOCK IN SHARE MODE;`添加共享锁,`SELECT ... FOR UPDATE;`添加排他锁。意向锁用于多粒度锁定,解决行锁与表锁的并发问题,分为意向共享锁(读)和意向排他锁(写),在事务请求行锁或表锁时自动获取,释放于事务结束。
|
9月前
|
Java
java中的锁是一种同步机制,用于控制并发访问共享资源的线程。在多线程程序中,如果多个线程同时访问同一个共享资源,就可能会导致数据不一致或者死锁等问题。Java中提供了多种锁机制来解决这些问题,常见的包括synchronized关键字、ReentrantLock类、Read/Write Lock等。
39 0
|
1月前
|
SQL 关系型数据库 MySQL
MySQL数据库——锁-行级锁(行锁、间隙锁和临键锁)
MySQL数据库——锁-行级锁(行锁、间隙锁和临键锁)
22 0
|
2月前
|
数据库 数据安全/隐私保护
什么是行级锁和表级锁
什么是行级锁和表级锁
45 0
|
10月前
|
存储 算法 安全
辛辛苦苦的劳动成果,如何上把锁?
辛辛苦苦的劳动成果,如何上把锁?
|
12月前
《锁》有那些?
锁是计算机科学中用于控制对共享资源的访问的一种同步机制。不同种类的锁适用于不同的场景和需求。下面是一些常见的锁的种类及其详细介绍:
57 1
|
SQL 监控 Oracle
【悲观锁/乐观锁/排它锁/共享锁/表级锁/行级锁/死锁】
【悲观锁/乐观锁/排它锁/共享锁/表级锁/行级锁/死锁】
|
存储 SQL NoSQL
mysql锁(全局锁、表锁、行锁、页锁、排他锁、共享锁)
mysql锁(全局锁、表锁、行锁、页锁、排他锁、共享锁)
328 0
|
PHP
并发锁(二):共享锁和独占锁
并发锁(二):共享锁和独占锁
188 0
并发锁(二):共享锁和独占锁
|
SQL 关系型数据库 MySQL
数据库并发控制、悲观锁(Pessimistic Lock)、乐观锁(Optimistic Lock)、排他锁(Exclusivelocks X锁)、共享锁(Shared Lock S锁)
数据库并发控制、悲观锁(Pessimistic Lock)、乐观锁(Optimistic Lock)、排他锁(Exclusivelocks X锁)、共享锁(Shared Lock S锁)
数据库并发控制、悲观锁(Pessimistic Lock)、乐观锁(Optimistic Lock)、排他锁(Exclusivelocks X锁)、共享锁(Shared Lock S锁)