多线程

线程生命周期
NEW:使用 new 操作符创建的新的线程对象的初始状态
RUNNABLE:可运行状态,又分为两种
	READY:RUNNING状态的线程 被调度/yield ,线程变为READY
	RUNNING:READY的线程被调度,变成变为RUNNAING
TERMINATED:RUNNABLE的线程执行完毕,一般是run方法中的逻辑执行完毕
BLOCKED:RUNNABLE状态的线程调用同步代码块,拿不到锁的时候
WAITING:RUNNABLE状态的线程调用wait、join、LockSupport.park方法的时候
TIME_WAITING:同WAITING,不过是方法中参数带时间,如sleep(时间)
线程的中断和复位
终止:
thread.interrupt()方法底层是通过设置一个boolean的标志位来标志线程是否应该终端,调用该方法可以将中断标志位设置为true
thread.currentThread.isInterrupt()可以获得底层的中断标志位

重置:
Thread.interrupted()可以使中断标志位复位(回到初始状态false)
中断一个处于阻塞状态(join、wait、sleep、queue.take)的线程,会抛出InterruptedException(相当于系统给了一个停止阻塞线程的入口,可捕获异常处理)
线程抛出InterruptedException也会重置中断标志位
锁升级
偏向锁(cas乐观锁):只有同一个线程去访问(绝大多时候)
轻量级锁(自旋锁):两个线程交替访问(绝大部分线程载获得锁以后,会在非常短的时间内释放)  ->  自旋(线程释放锁很快,一直循环重试,反而效率很高)
	问题:自旋会占用CPU资源,所以在指定的自旋次数后,还没有获得轻量级锁,锁会膨胀成重量级锁 -> 阻塞
	自旋次数:1、设置(preBlockSpin 默认为10)			2、 自适应自旋
重量级锁(Mutex):多个线程同时访问      阻塞(升级到重量级锁之后,没有获得锁的线程会被阻塞 BLOCKED)
	monitorEnter ------【Monitor】------monitorEnter成功------获得对象锁 ------ monitorExit
每一个对象都有一个ObjectMonitor
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。 经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。 经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。 经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。
经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。 经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。 经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。 经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值