How lock works?
Eliminating Synchronization-Related Atomic Operations with Biased Locking and Bulk Rebiasing
http://www.oracle.com/technetwork/java/biasedlocking-oopsla2006-wp-149958.pdf
https://blogs.oracle.com/dave/biased-locking-in-hotspot
Quickly Reacquirable Locks∗
深入剖析基于并发AQS的(独占锁)重入锁(ReetrantLock)及其Condition实现原理
[Agesen99] O. Agesen, D. Detlefs, A. Garthwaite, R. Knippel, Y. S. Ramakrishna, D. White: An Efficient Meta-lock for Implementing Ubiquitous Synchronization .
[Bacon98] D. F. Bacon, R. Konuru, C. Murthy, M. Serrano: Thin Locks: Featherweight Synchronization for Java. 1998.
[Kawachiya02] K. Kawachiya, A. Koseki, T. Onodera: Lock Reservation: Java Locks can Mostly do without Atomic Operations. 2002.
[Russel06] K. Russell, D. Detlefs: Eliminating Synchronization-Related Atomic Operations with Biased Locking and Bulk Rebiasing 263-272. ACM Press, 2006.
深入理解Java内存模型(五)——锁
https://www.usenix.org/legacy/event/jvm01/full_papers/dice/dice.pdf
https://wiki.openjdk.java.net/display/HotSpot/Synchronization
http://joeduffyblog.com/2016/11/30/15-years-of-concurrency/
http://www.moserware.com/2008/09/how-do-locks-lock.html
http://www.infoq.com/cn/articles/java-memory-model-5
【死磕Java并发】—–深入分析synchronized的实现原理
cmpxchgl
http://www.lenky.info/archives/2012/11/2028
Java锁----Lock实现原理
http://blog.csdn.net/endlu/article/details/51249156
Java锁--Lock实现原理(底层实现)
http://blog.csdn.net/Luxia_24/article/details/52403033
分析ReentrantLock的实现原理
http://www.jianshu.com/p/fe027772e156
Lock translate to monitor
Intel’s ‘cmpxchg’ instruction
http://heather.cs.ucdavis.edu/~matloff/50/PLN/lock.pdf
http://www.moserware.com/2008/09/how-do-locks-lock.html
http://www.blogjava.net/xylz/archive/2010/07/07/325410.html
http://stackoverflow.com/questions/12894078/pause-instruction-in-x86
Intel® 64 and IA-32 Architectures Software Developer’s Manual
https://msdn.microsoft.com/en-us/library/system.threading.spinlock(v=vs.110).aspx
https://liuzhengyang.github.io/2017/03/28/volatileandlock/
Thin Locks: Featherweight Synchronization for Java
http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.90.664&rep=rep1&type=pdf
How lock works?的更多相关文章
- Eclipse hangs on loading workbench, eclipse停在启动界面的处理办法
http://stackoverflow.com/questions/8972034/eclipse-hangs-on-loading-workbench 解答一: In most cases, rm ...
- LOCK TABLES和UNLOCK TABLES与Transactions的交互
LOCK TABLES对事务不安全,并且在试图锁定表之前隐式提交任何活动事务. UNLOCK TABLES只有在LOCK TABLES已经获取到表锁时,会隐式提交任何活动事务.对于下面的一组语句,UN ...
- SQL Server Lock Escalation - 锁升级
Articles Locking in Microsoft SQL Server (Part 12 – Lock Escalation) http://dba.stackexchange.com/qu ...
- Deal with Android phones with pattern lock on
Yesterday my colleague asked me for help...She has two android phones , one is hTC and the other is ...
- How Tomcat Works(四)
Servlet容器有两个主要的模块,即连接器(connector)与容器(container),本文接下来创建一个连接器来增强前面文章中的应用程序的功能,以一种更优雅的方式来创建request对象和r ...
- Metadata Lock原理1
https://www.percona.com/blog/2013/02/01/implications-of-metadata-locking-changes-in-mysql-5-5/ impli ...
- mysql出现Waiting for table metadata lock的原因及解决方案
最近经常遇到mysql数据库死锁,郁闷死, show processlist; 时 Waiting for table metadata lock 能一直锁很久 下面有官网的一段话,可以理解下 htt ...
- 转 MYSQL SELECT ... FOR UPDATE and SELECT ... LOCK IN SHARE MODE Locking Reads
原文: http://dev.mysql.com/doc/refman/5.0/en/innodb-locking-reads.html In some circumstances, a consis ...
- Waiting for table metadata lock
出现下图这个现象之前是在一张事务操作频繁地表上,执行了truncate操作. mysql.sock@(none)> select user,host,db,command,time,state, ...
随机推荐
- Unbound服务的安装与运行管理
一.Unbound服务的安装与运行管理 1.获取Unbound软件包 RHEL7.x自带了Bind和Unbound两种DNS服务包,Unbound是红帽公司推荐使用的DNS服务器.目前,虽然Bind在 ...
- js获取height和width总结
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- Dubbo创建提供者&消费者工程
1. 前言 Dubbo采用全Spring配置方式,透明化接入应用,对应用没有任何API侵入,只需用Spring加载Dubbo的配置即可,Dubbo基于Spring的Schema扩展进行加载.如果不想使 ...
- Dockerfile 构建后端springboot应用并用shell脚本实现jenkins自动构建
Dockerfile 文件构建docker镜像 FROM centos MAINTAINER zh*****eng "z*******ch.cn" ENV LANG en_US.U ...
- hihocoder第196周
此题解法:动态规划,倒骑毛驴. 在使用动态规划的时候,如果正着求难求,可以考虑倒着来. 这道题坑不少,自己代码能力太弱了,写代码的过程中总是容易犯细节错误.虽然大的方向是对的,但是小坑非常致命! 比如 ...
- 【转】fileno函数与ftruncate函数
fileno函数与ftruncate函数 2011-10-25 10:03:33 分类: LINUX fileno()函数 功 能:把文件流指针转换成文件描述符相关函数:open, fope ...
- php支付宝开发
1.下载对应的接口demo,注意退款有无密和有密 2.根据接口代码编写,要注意notify_url和return_url不能带有额外参数,并且notify_url中途不能含有跳转,否则post数据会丢 ...
- ceph-RGW Jewel版新概念
一.概述 zone: 包含多个RGW实例的一个逻辑概念.zone不能跨集群,同一个zone的数据保存在同一组pool中: zonegroup:一个zonegroup如果包含一个或多个zone,如果包含 ...
- C# 图片识别(支持21种语言)
图片识别的技术到几天已经很成熟了,只是相关的资料很少,为了方便在此汇总一下(C#实现),方便需要的朋友查阅,也给自己做个记号. 图片识别的用途:很多人用它去破解网站的验证码,用于达到自动刷票或者是批量 ...
- Linux shell下30个有趣的命令
Tips 原文作者:Víctor López Ferrando 原文地址:30 interesting commands for the Linux shell 这些是我收集了多年的Linux she ...