写点什么

lock

0 人感兴趣 · 19 次引用

  • 最新
  • 推荐

深入浅出 sychronized 与 Lock 的实现原理

用户头像
清风
2022-08-14

本文从实现原理出发,深入分析了sychronized与Lock的异同,在深入的同时,并不拘泥于实现细节。

Java 有了 synchronized,为什么还要提供 Lock

在Java中提供了synchronized关键字来保证只有一个线程能够访问同步代码块。既然已经提供了synchronized关键字,那为何在Java的SDK包中,还会提供Lock接口呢?

读写锁 ReentranReadWriteLock 源码分析

用户头像
Ayue、
2021-12-27

在上篇我们聊到了可重入锁ReentrantLcok ,但它也是一把独占锁(也叫排他锁),也就是说在同一时刻只能允许一个线程持有,但在大多数场景下,都是读多写少,并且读并不存在数据竞争的问题,因此也不存在线程安全问题,因此,如果这个时候去使用ReentrantLcok

了解 Java 中的锁 Lock

用户头像
Ayue、
2021-12-24

在之前的文章synchronized底层实现说到synchronized是属于JVM层面的锁,而且它只是一个关键字,是不能查看Java源码的,因此我们可以把它当做隐式锁。

https://static001.geekbang.org/infoq/ac/ac647ecb0964970175e4bf1b8112541a.png?x-oss-process=image%2Fresize%2Cw_416%2Ch_234

ReentrantLock 中的 4 个坑!

用户头像
王磊
2021-08-13

JDK 1.5 之前 synchronized 的性能是比较低的,但在 JDK 1.5 中,官方推出一个重量级功能 Lock,一举改变了 Java 中锁的格局。JDK 1.5 之前当我们谈到锁时,只能使用内置锁 synchronized,但如今我们锁的实现又多了一种显式锁 Lock。

https://static001.geekbang.org/infoq/a2/a260e7abf737e4158384366b2b510401.jpeg?x-oss-process=image%2Fresize%2Cw_416%2Ch_234

我看 JAVA 之 并发编程【二】java.util.concurrent.locks

用户头像
awen
2021-07-29

关于说到 JAVA 的并发编程,就不得不说一说 java.util.concurrent.locks包,

https://static001.geekbang.org/infoq/19/190d56cda49043bd1839b63d6040f4f3.jpeg?x-oss-process=image%2Fresize%2Cw_416%2Ch_234

MySQL- 技术专题 - 锁的介绍分析

用户头像
洛神灬殇
2021-04-08

MySQL大概率上都会遇到死锁问题,这实在是个令人非常头痛的问题。本文将会对死锁进行相应介绍,对常见的死锁案例进行相关分析与探讨,以及如何去尽可能避免死锁给出一些建议。

https://static001.geekbang.org/infoq/19/190d56cda49043bd1839b63d6040f4f3.jpeg?x-oss-process=image%2Fresize%2Cw_416%2Ch_234

MySQL- 技术专题 -Lock 入门到精通

用户头像
洛神灬殇
2021-04-06

锁是计算机协调多个进程或线程并发访问共享资源的保证(一致性、有效性)访问机制;共享资源包含了很多类型:比如计算机资源中:CPU、RAM、ROM、CACHE、BUFFER、I/O、共享数据。

https://static001.geekbang.org/infoq/bf/bfb0f7ab30250d250a5105d1a3864d2e.png?x-oss-process=image%2Fresize%2Cw_416%2Ch_234

并发条件队列之 Condition 精讲

用户头像
伯阳
2021-01-27

一文带你详细了解condition在锁中的应用,带你详解条件队列和同步队列的关系和区别

https://static001.geekbang.org/infoq/98/98cf873973db3e3e957922b2d2359293.jpeg?x-oss-process=image%2Fresize%2Cw_416%2Ch_234

面试官:你说说 ReentrantLock 和 Synchronized 区别

用户头像
叫练
2021-01-26

大家好!又和大家见面了。为了避免面试尴尬,今天同比较通俗语言和大家聊下ReentrantLock和Synchronized区别!

https://static001.geekbang.org/infoq/b9/b9eed171666b50c66c97a4aef1507919.png?x-oss-process=image%2Fresize%2Cw_416%2Ch_234

AQS 之 ReentrantReadWriteLock 写锁

用户头像
伯阳
2021-01-22

读锁在前一篇文章已经进行详细描述了,一文带你学会ReentrantReadWriteLock中的lock方法

ReentrantLock 原理分析

用户头像
旺旺
2021-01-19

ReentrantLock是Java并发包中提供的一个可重入的互斥锁,掌握它是提升Java内功的必备。

https://static001.geekbang.org/infoq/bc/bce921042bf00dd190160972048e534f.png?x-oss-process=image%2Fresize%2Cw_416%2Ch_234

一文带你学会 AQS 和并发工具类的关系 2

用户头像
伯阳
2021-01-18

一文带你了解AQS在ReentrantLock中非公平锁的实现

https://static001.geekbang.org/infoq/9d/9d0da31d771b7f44b18572dce9a73c70.png?x-oss-process=image%2Fresize%2Cw_416%2Ch_234

Lock 锁 精讲

用户头像
伯阳
2021-01-12

为什么synchronized不够用,还需要Lock

https://static001.geekbang.org/infoq/8d/8d5c26a43f56ded68617c0fb316285d6.jpeg?x-oss-process=image%2Fresize%2Cw_416%2Ch_234

排队打饭:公平锁和非公平锁 (面试)

用户头像
叫练
2021-01-03

有个小伙伴最近咨询我,前段时间他被面试官问了synchronized是公平锁还是非公平锁?排队打饭:公平锁和非公平锁(面试)

https://static001.geekbang.org/infoq/28/28e4a99aac8fee3f41aa523f8cc832a5.jpeg?x-oss-process=image%2Fresize%2Cw_416%2Ch_234

母鸡下蛋实例:多线程通信生产者和消费者 wait/notify 和 condition/await/signal 条件队列

用户头像
叫练
2020-12-31

多线程通信一直是高频面试考点,有些面试官可能要求现场手写生产者/消费者代码来考察多线程的功底,今天我们以实际生活中母鸡下蛋案例用代码剖析下实现过程。

https://static001.geekbang.org/infoq/5d/5dbc89b9d0335ff43ec89a9068557fc9.png?x-oss-process=image%2Fresize%2Cw_416%2Ch_234

高并发系列——CAS 操作及 CPU 底层操作解析

用户头像
诸葛小猿
2020-09-15

CAS(Compare-and-Swap),即比较并替换,是一种实现并发算法时常用到的技术,Java并发包中的很多类都使用了CAS技术。CAS也是现在面试经常问的问题,本文将深入的介绍CAS的原理。

lock_lock技术文章_InfoQ写作社区