[docs update]增加ReentrantLock相关内容#2554
Merged
Snailclimb merged 2 commits intoSnailclimb:mainfrom Dec 9, 2024
1020325258:java-concurrent
Merged
[docs update]增加ReentrantLock相关内容#2554Snailclimb merged 2 commits intoSnailclimb:mainfrom 1020325258:java-concurrent
Snailclimb merged 2 commits intoSnailclimb:mainfrom
1020325258:java-concurrent
Conversation
Owner
感谢补充,这块内容更容易理解了。 |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
增加了关于 ReentrantLock 特性、补充说明相关的内容
因为 ReentrantLock 的 lockInterruptibly() 方法响应中断,到底怎么响应,这一点平常很少碰到相关场景,不大容易理解,因此在 Stack Overflow 找了一个案例,说明了 lockInterruptibly() 如何响应的中断
以及 ReentrantLock 的获取锁超时的功能也是和 synchronized 区别比较大的地方,synchronized 会一直阻塞等待,这是本质上的缺陷,而 ReentrantLock 通过指定超时时间解决这个问题,这一点也是和 synchronized 最重要的区别