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∗

https://cdn.app.compendium.com/uploads/user/e7c690e8-6ff9-102a-ac6d-e4aebca50425/f4a5b21d-66fa-4885-92bf-c4e81c06d916/File/ccd39237cd4dc109d91786762fba41f0/qrl_oplocks_biasedlocking.pdf

深入剖析基于并发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 .

doi:10.1145/320384.320402

[Bacon98] D. F. Bacon, R. Konuru, C. Murthy, M. Serrano: Thin Locks: Featherweight Synchronization for Java.  1998.

doi:10.1145/277650.277734

[Kawachiya02] K. Kawachiya, A. Koseki, T. Onodera: Lock Reservation: Java Locks can Mostly do without Atomic Operations. 2002.

doi:10.1145/582419.582433

[Russel06] K. Russell, D. Detlefs: Eliminating Synchronization-Related Atomic Operations with Biased Locking and Bulk Rebiasing 263-272. ACM Press, 2006.

doi:10.1145/1167473.1167496

深入理解Java内存模型(五)——锁

http://www.infoq.com/cn/articles/java-memory-model-5

https://www.usenix.org/legacy/event/jvm01/full_papers/dice/dice.pdf

深入理解Java并发之synchronized实现原理

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的实现原理

【死磕Java并发】—–深入分析ThreadLocal

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

https://github.com/dotnet/roslyn/blob/56f605c41915317ccdb925f66974ee52282609e7/src/Compilers/CSharp/Portable/Lowering/LocalRewriter/LocalRewriter_LockStatement.cs

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

https://blogs.msdn.microsoft.com/vancem/2006/03/28/low-lock-techniques-in-action-implementing-a-reader-writer-lock/

http://www.blogjava.net/xylz/archive/2010/07/07/325410.html

http://stackoverflow.com/questions/12894078/pause-instruction-in-x86

https://software.intel.com/en-us/articles/implementing-scalable-atomic-locks-for-multi-core-intel-em64t-and-ia32-architectures

Intel® 64 and IA-32 Architectures Software Developer’s Manual

http://www.intel.com/content/dam/www/public/us/en/documents/manuals/64-ia-32-architectures-software-developer-system-programming-manual-325384.pdf

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?的更多相关文章

  1. Eclipse hangs on loading workbench, eclipse停在启动界面的处理办法

    http://stackoverflow.com/questions/8972034/eclipse-hangs-on-loading-workbench 解答一: In most cases, rm ...

  2. LOCK TABLES和UNLOCK TABLES与Transactions的交互

    LOCK TABLES对事务不安全,并且在试图锁定表之前隐式提交任何活动事务. UNLOCK TABLES只有在LOCK TABLES已经获取到表锁时,会隐式提交任何活动事务.对于下面的一组语句,UN ...

  3. SQL Server Lock Escalation - 锁升级

    Articles Locking in Microsoft SQL Server (Part 12 – Lock Escalation) http://dba.stackexchange.com/qu ...

  4. 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 ...

  5. How Tomcat Works(四)

    Servlet容器有两个主要的模块,即连接器(connector)与容器(container),本文接下来创建一个连接器来增强前面文章中的应用程序的功能,以一种更优雅的方式来创建request对象和r ...

  6. Metadata Lock原理1

    https://www.percona.com/blog/2013/02/01/implications-of-metadata-locking-changes-in-mysql-5-5/ impli ...

  7. mysql出现Waiting for table metadata lock的原因及解决方案

    最近经常遇到mysql数据库死锁,郁闷死, show processlist; 时 Waiting for table metadata lock 能一直锁很久 下面有官网的一段话,可以理解下 htt ...

  8. 转 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 ...

  9. Waiting for table metadata lock

    出现下图这个现象之前是在一张事务操作频繁地表上,执行了truncate操作. mysql.sock@(none)> select user,host,db,command,time,state, ...

随机推荐

  1. Ubuntu x86-64汇编(1)

    x86-64 Assembly Language Programming with Ubuntu 的读书记录 x86计算机体系架构 架构总览 CPU, RAM, 存储, 输入输出设备等, 数据的尺寸( ...

  2. Android 本地播放器

    发布时间:2018-09-06   技术:Glide+pinyin4j+SwipeDelMenuLayout   概述 这是一款Android 端的本地音乐播放器,界面风格有模仿网易云音乐.bilib ...

  3. 利用组策略API 编辑GPO(Group Policy Object)

    用windows自带的GPO Editor编辑修改,然后利用注册表监控器regFromApp监视注册表的改动,就知道某个策略修改了注册表的哪个字段了. 下面是禁止U盘访问的例子:   #include ...

  4. js中setTimeout、setInterval、 clearInterval方法简介

    setTimeout setTimeout(code, millisec) 用于在指定的毫秒数后调用函数或计算表达式. 说明: setTimeout()只执行一次code.如果要多次调用,要使用set ...

  5. Android网络开发之蓝牙

    蓝牙采用分散式网络结构以及快调频和短包技术,支持点对点及点对多点通信,工作在全球通用的2.4GHz ISM(I-工业.S-科学.M-医学)频段,其数据速率为1Mbps,采用时分双工传输方案.   蓝牙 ...

  6. 如何关闭Golang中的HTTP连接 How to Close Golang's HTTP connection

    我们的一个服务是用Go写的,在测试的时候发现几个小时之后它就会core掉,而且core的时候没有打出任何堆栈信息,简单分析后发现该服务中的几个HTTP服务的连接数不断增长,而我们的开发机的fd lim ...

  7. 单个APP页面支持屏幕旋转

    1.info中支持所有的方向 2.APPDelega.h中添加属性 @property (nonatomic,assign) BOOL allowRotate; APPdelegate.m中实现方法 ...

  8. 根据友盟统计错误分析线上的崩溃-b

    登陆友盟官网找到友盟统计,找到你iOS平台下你所属的APP(图1) 图1 点击进去会出现当日错误列表,选择你发生错误的日期(图2) 图2 我们可以看到,这一天中出现了两个错误,每个错误出现在不同的时间 ...

  9. 跟我学SharePoint 2013视频培训课程——自定义网站导航(4)

    课程简介 第4天,自定义SharePoint 网站导航 视频 SharePoint 2013 交流群 41032413

  10. 如何提升RDS响应速度

    如果采用短连接的方式连接RDS,请在与RDS相连的云服务器上执行以下命令来提升RDS响应速度.(注:云服务器要有公网带宽) 1.安装nscd 云服务器上执行命令 Ubuntu系统执行:apt-get  ...