多线程整理2

当你同时启动多个设置了优先级的线程时,并不是 执行完优先级高的线程之后才去执行优先级低的线程,而是高优先级的线程获得CPU的时间片的概率更高,整个的执行流程大致符合高优先级的线程先执行,但前面的执行过程中同样会存在优先级低的线程。
线程可以分为 ①守护线程 ②用户线程
其中守护线程是为用户线程而存在的,当用户程序执行结束后,不论守护线程是否执行完毕,守护线程都会结束执行。
设置守护线程的方法: 对象 . setDaemon(true);
判断守护线程的方法: thread . isDaemon();
注意事项:守护、用户线程的设置 要在线程start()之前设置,否则会报错。

线程的常用方法:
a.join :等待此线程执行完成之后,再执行后序的代码。
b.interrupt() 线程终止
在这里插入图片描述
interrupt()需要配合Thread.interrupted() 或者Thread.currentThread().isInterrupted()的判断一起使用

对比isinterruptid 和 interruptted
1.interrupted属于静态方法
2.interrupted在使用完之后会重置中断标识符,而islnterrupted不 重置中断表示符

c.yield:让出CPU的执行权
yield 方法会让出CPU的执行权,线程调度器重新调度线程执行,此时仍然有一定的机会启动刚被yield的线程

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值