什么是线程让步?

在校园中,经常会看到很多同学一起打篮球,当某个同学抢到篮球后可以拍一会儿再传递给其他人,大家重新开始抢篮球,这个过程就相当于程序中的线程让步。线程让步可以通过yield()方法来实现,该方法和sleep(long millis)方法有点类似,都可以让当前正在运行的线程暂停,区别在于yield()方法不会阻塞该线程,它只是将线程转换成就绪状态,让系统的调度器重新调度一次。当某个线程调用yield()方法之后,与当前线程优先级相同或者更高的线程可以获得执行的机会。接下来通过一个案例来演示yield()方法的使用,如例10-9所示。

例10-9 Example09.java

//定义YieldThread类继承Thread类 class YieldThread extends Thread { //定义一个有参的构造方法 public YieldThread(String name) { super(name); //调用父类的构造方法 public void run() { for (int i = 0; i < 5; i++) { System.out.println(Thread.currentThread().getName() + “—“ + i); If(i == 2) { System.out.print( “线程让步:”); Thread.yield(); //线程运行到此,作出让步 } } } } public class Example09 { public static void main(String[] args) { //创建两个线程 Thread threadl1 = new YieldThread(“threadl”); Thread thread2 = new YieldThread(“thread2”); //开启两个线程 Thread1.start(); thread2.start(); } }

运行结果如图所示

什么是线程让步?

例10-9中创建了两个线程threadl和thread2,它们的优先级相同。两个线程在循环变量i等于2时,都会调用Thread的yield()方法,使当前线程暂停,让两个线程再次争夺CUP使用权,从运行结果可以看出,当线程thread1输出2以后,会做出让步,线程thread2获得执行权,同样,线程 thread2输出2后,也会做出让步,线程 threadl获得执行权。小提示:通过yield()方法可以实现线程让步,让当前正在运行的线程失去CPU使用权,让系统的调度器重新调度一次,由于Java虚拟机默认采用抢占式调度模型,所有线程都会再次抢占CUP资源使用权,所以在执行线程让步后并不能保证立即执行其他线程。

免责声明:文章内容来自互联网,本站仅作为分享,不对其真实性负责,如有侵权等情况,请与本站联系删除。
转载请注明出处:什么是线程让步? https://www.dachanpin.com/a/cyfx/10788.html

(0)
上一篇 2023-05-12 02:17:25
下一篇 2023-05-12 02:18:43

相关推荐

  • 3M上海胜学创业体验中心落户奉贤

    版权声明: 在本网站刊登的所有内容,包括但不限于文字、图片、音频视频、美术设计、程序及多媒体等信息,未经著作权人合法书面授权,不得进行一切形式的下载、转载或建立镜像。获得著作权人合法书面授权的,必须在授权范围内使用,使用时保留本网注明的”稿件来源”,并自负法律责任。凡注明为其他媒体来源,均为转载自其他媒体,转载并不代表本网赞同其观点,…

    创业分享 2023-05-29
    71
  • 泉港发放首批担保贴息贷款 为创业者“加油”

    责任编辑:姚珊红   据介绍,自今年3月“泉行惠货-创业担保贷”正式推出以来,泉州银行泉港支行积极落实贯彻总行及各级政府扶持政策,全力推进业务发展,推进业务高效落地。(记者 唐钏淦 庄敏)   创业是一条充满激情、冒险的路,也是一条充斥着荆棘、艰辛的路。4月16日,泉港区财政局、人社局、泉州银行举行首批创业担保贴息贷款发放仪式,为4位创业人员发放贷款40万元…

    创业分享 2023-05-13
    100
  • 创业,如何赢得不一样?这11家互联网公司告诉你答案。

    创业,如何赢得不一样?这11家互联网公司告诉你答案。 2017-11-03 17:57 来源:互联网观察mp 创客 原标题:创业,如何赢得不一样?这11家互联网公司告诉你答案。 互联网创业,一个并不输AI(人工智能)、VR、自动驾驶、区块链、分享经济的热词,相反,它可能是以上热词的归一。 创业并不美好。孤注一掷的开始,日复一日的坚持,随时丢盔卸甲的溃败,以及…

    创业分享 2023-05-20
    52
  • “贵阳银行杯”创业金点子暨痛点创业大赛决赛昨举行

      记者看到,贵阳众创网包含政策·公告、众创资讯、资源、项目库、梦工厂、办事指南六大功能板块,以实现创业引导、创业帮扶、项目推介、众筹融资、创业培训一站式服务。其中,众创资源板块设专家、园区、投融资、社会4个栏目,首批邀请了35名创业指导专家在线提供咨询和预约服务;同时,联合贵阳市7家创业孵化基地、2家创业示范园和15家众创空间为创业者提供创业孵化服务等。 …

    2023-05-27
    165
  • 杭州打造“特色小镇联盟”推动长三角一体化创新创业

    杭州打造“特色小镇联盟”推动长三角一体化创新创业   新华社杭州9月13日电 为了推动创新创业高质量发展,杭州市政府日前决定推动各类创新创业平台串珠成链、连线成网,集聚全国乃至全球创客来杭筑梦、追梦、圆梦,构建广覆盖、宽领域、多层次的“追梦创联体”。   杭州市政府日前公布的《关于推动创新创业高质量发展打造全国“双创”示范城的实施意见》指出,打造“特色小镇联…

    创业分享 2023-05-12
    102

发表回复

登录后才能评论

联系我们

在线咨询: QQ交谈

邮件:362039258@qq.com

工作时间:周一至周五,9:30-16:30,节假日休息