四丶多线程的基础补漏

四丶多线程的基础补漏

一丶死锁产生的原因

1.互斥:同一时间的只有一个线程可以占有资源
2.占有且等待:线程T1占有用资源X,且等待着资源Y,但是不释放资源X
3.不可抢占:线程T1占有资源X的时候,其他线程不能抢占当前资源
4.循环等待:线程T1等待线程T2占用的资源,线程T2等待着线程T1占用的资源。

二丶ThreadJoin()

1.TreadJoin(),可以让线程结果对其他线程可见,并不是串行的执行。

三丶ThreadLocal

1.ThreadLocal其实是对共享变量进行了隔离,从而保证线程的安全。

四丶关于Volatile关键字

1.使用volatile修饰的数组是线程可见的吗?
对于数组可见,但是对于数组的中的元素不具备可见性。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值