课程名称:Java高并发之魂:synchronized深度解析
课程章节:第三章 synchronized用法
课程讲师: 悟空
课程内容:
1、synchronized用法有哪两种?
对象锁:
1.1、包括方法锁(默认锁对象为this当前实例对象),synchronized修饰普通方法,锁对象默认为this。
1.2、同步代码块锁(自己指定锁对象),手动指定锁对象; 在某些情况下,我们编写的方法体可能比较大,同时存在一些比较耗时的操作,而需要同步的代码又只有一小部分,如果直接对整个方法进行同步操作,可能会得不偿失,此时我们可以使用同步代码块的方法对需要同步的代码进行包裹,这样就无需对整个方法进行同步操作了。
类锁:java类可能有多个对象,但是只有一个class对象,指synchronized修饰静态的方法或指定锁为Class对 象,它的本质不过就是class对象的锁而已,类锁只能在同一时刻被一个对象拥有,其他要使用只会被阻塞。
课程收获:
谢谢老师,讲的非常细致,很容易懂。这一节学的是synchronized的用法,理解synchronized的关键就在于:若想要多个线程同步,则这些线程必须竞争同一个同步锁。这个同步锁,可以理解为一个对象。
对Synchronized关键字的用法有了更加明确的用法,非常期待后边的学习。
点击查看更多内容
为 TA 点赞
评论
共同学习,写下你的评论
评论加载中...
作者其他优质文章
正在加载中
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦