作者小头像 Lv.1
47 成长值

个人介绍

这个人很懒,什么都没有留下

感兴趣或擅长的领域

暂无数据
个人勋章
TA还没获得勋章~
成长雷达
20
27
0
0
0

个人资料

个人介绍

这个人很懒,什么都没有留下

感兴趣或擅长的领域

暂无数据

达成规则

发布时间 2021/09/06 09:50:21 最后回复 爱学习的多宝 2021/11/03 21:04:04 版块 社区活动
7044 134 0
发布时间 2021/09/06 09:50:21 最后回复 爱学习的多宝 2021/11/03 21:04:04 版块 社区活动
7044 134 0
他的回复:
华为云ID:col127 + 第五周笔记 多线程2 什么是线程异步:多个线程,使用同一个资源,抢占资源                                                                                   什么是线程同步:排队执行 同步和异步的区别    1.同步最安全,但是效率低    2.异步效率高,但是容易导致死锁。        产生死锁的原因            指两个或两个以上的线程在执行的过程中,因争夺资源而造成的一种互相等待的过程        产生死锁的条件            1.互斥条件            2.请求与保持条件            3不剥夺条件            4.循环等待条件        如何避免死锁            1.加锁顺序            2.加锁时限            3.加锁检测如何实现线程同步    1.通过使用synchronized关键字,来实现同步。        实现锁同步的方法            1.同步方法            2.同步代码块 - 范围更小    2.使用wait()与notify()/notofyAll()    3.Lock- 重入锁    4.volatile关键词  - 特殊域变量    5.使用局部变量 - ThreadLocal    synchronized和volatile的区别    synchronized与Lock有什么异同        synchronized            1.synchronized锁是使用Object类本身提供的wait,notify,notifyAll方法的调度机制            2.synchronized可以用在方法上和代码块上,而括号中要放需要表示的锁对象(常用this表示)            3.synchronized是JVM执行的            4.synchronized会自动释放锁            5.synchronized是java内置的关键词            6.无法判断锁状态        Lock            1.Lock锁是使用condition包进行线程之间的调度            2.Lock锁需要指定起止位置。            3.Lock是通过代码实现的            4.Lock需要手动释放            5.Lock是接口            6.可以判断锁状态