手机版
网站地图
美文美图
最新动态
你好,欢迎访问
好美文阅读网
个性皮肤
搜索
网站首页
美文
文章
散文
日记
诗歌
小说
故事
句子
作文
签名
祝福语
情书
范文
读后感
文学百科
美文摘抄
节日文章
名家散文
网名大全
座右铭
口号大全
面试技巧
说说大全
阅读答案
诗词默写
流言蜚语
节日祝福
好句子
经典台词
谚语大全
亲情故事
友情故事
表白情书
工作报告
活动总结
心得体会
专题汇总
美文网首页
s lock
s lock
作者:
朱汉成
| 来源:发表于
2018-07-23 11:47 被阅读0次
底层区别两者都是重入锁,前者是底层,reeentrantlock通过cas算法等进行实现
Synchronized分析
s可以加在可以加在方法上、或者代码段上。普通方法----锁的对象,静态方法----锁的是类、代码块锁的是括号里的s在jvm实现原理就是进出monitor来实现,monitorexit和monitorexit来实现。s存储在class对象头中,用三个字宽(1-4字节)存储,非数组就是2个字宽。存储对象的hashcode、粉黛年龄和锁的标志,
偏向锁: 01 线程id 分代年纪 epoch
轻量级:00指向栈中锁记录的指针 0(是否是偏向锁)
重量级:10指向重量级的互斥量 的指针 0(是否是偏向锁)
gc : 11
偏向锁:当锁不存在竞争关系的时候,会默认开偏向锁,进行加锁时,假如markword为空,cas加锁,以后每次进入检测即可。其他线程来竞争时,全局安全点、会将头指向线程暂停,然后查看是否存活,如果活着就升级,否则头设为空轻量级:线程同步之前,会在线程栈中创建空间复制markword,官称displaced markword。然后线程使用cas尝试将对象中指向栈中的displaced markword,如果成功了得到锁,失败了,自旋竞争,如果自悬竞争失败,则锁膨胀升级。
重量级:常说的,来了j就阻塞自旋锁:短时间内可能锁会释放,自己在原地不停申请,然后超时会阻塞
Reentranlock
r直接是在内部实现两个sync,分别是公平与非公平,可以创建时声明。那么这两个sync是实现了AQSAQS:同步队列用来存储;获取失败则会进入队列中,自旋,其他很多都是cas公平非公平区别在于去竞争锁看看是否有前驱结点,
读写锁
读写锁reentrantreadandwritelock:利用一个整形变量,前16读操作,后16写操作分别两个锁读状态只记录所有次数,各自线程次数自己记录写锁降级:必须是已经拿到写锁,然后再再拿到拿到读锁,然后是写锁。、放申请锁的线程,当开始竞争时,查看申请状态state-cas;查看是否为自己已经得到锁,进行重入
相关文章
网友评论
本文标题:
s lock
本文链接:
https://www.haomeiwen.com/subject/kjsyeftx.html
延伸阅读
那年盛夏诗歌
环境监察队工作总结范文
优秀教师学习心得范文
华胥引的读后感300字
《Its red》教学反思范文
农资购销的合同范本
竞选中队委优秀演讲稿
辞金蹈海的成语解释
《世纪宝鼎》公开课教案设计
因为爱你,所以牵挂
今生今世红尘醉——美到
一个90后的内心独白
致已逝去的高中年华
深度阅读
您也可以注册成为美文阅读网的作者,发表您的原创作品、分享您的心情!
情人节
母亲节
重阳节
清明节
端午节
植树节
元宵节
妇女节
愚人节
圣诞节
父亲节
教师节
儿童节
劳动节
青年节
建军节
万圣节
平安夜
光棍节
中秋节
国庆节
感恩节
腊八节
更多话题
栏目导航
摄影
故事
互联网
读书
旅行
热点阅读
至少这是我所认为的
人生该如何退场
6.14心理学-高峰体验
进件加速 | 答见与阿里巴巴网商银行达成合作
明月多情应笑我
我愿只是一抹色彩
亲人般的朋友,关系也会变淡。
我的父亲
一切在夏天结束时复苏发芽
shell小练习
网友评论