For investors
股价:
5.36 美元 %For investors
股价:
5.36 美元 %认真做教育 专心促就业
随着互联网的不断发展,越来越多的人都通过学习达内Java编程开发课程来实现职业转型发展,而本文我们就来简单了解一下,Java编程线程停止方法分享。
1.停止线程
未升级之前,停止线程用stop()方法,但由于该方法具有固定的不安全性,因此Jdk升级之后,stop()方法就已经过时,不再使用。但是如何停止线程呢?
要想让线程结束,只有一种方法就是让run()方法结束。要让run()方法结束,就需要用主线程进行控制,主线程可以通过改变循环条件来让run()方法结束。但当进入循环的线程都处于冻结状态时,这时控制循环标记也无济于事,那么就必须要让冻结的线程醒来,Java提供了Interrupt()方法来让冻结的线程苏醒,用该方法时会发生Interrupt异常,只需在处理异常里进行改变循环标志,即可结束循环,从而实现停止线程的目的。
2.守护线程
当线程被调用setDaemon(booleanon)方法且boolean值为true,该线程就被标记为守护线程,也称后台线程。线程要被标记为守护线程,必须要在启动该线程之前进行标记。
守护线程随着所有的非守护线程(前台前程)结束而终止,即守护线程的存在必须至少要有一个非守护线程存在。
3.join()方法
该方法表示等待该线程结束,临时加入线程执行。例如,当A线程执行到了B线程的join()方法时,A就会等待,释放执行权,等B线程执行完,A才具备获取cpu执行权的资格,才会去执行。如果B线程还未执行完就处于冻结状态,这时会产生Interrupt中断异常,此时A线程不必等待B执行完就可以清除冻结状态,重新回到阻塞状态。
4.toString()方法
返回该线程的字符串表示形式,包括线程名称、优先级和线程组。
线程组:一般情况下,谁开启的就属于哪个线程组。
优先级:用setPriority(intnewPriority)进行设置,代表cpu执行该线程的频率。优先级范围为1—10,默认优先级为5。小优先级定义为常量MIN_PRIORITY,大优先级定义为常量MAX_PRIORITY。
5.yield()方法
暂停当前正在执行的线程对象,并执行其他线程。能够达到线程运行的平均效果。
【免责声明】本文系本网编辑部分转载,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。如涉及作品内容、版权和其它问题,请在30日内与管理员联系,我们会予以更改或删除相关文章,以保证您的权益!更多内容请加danei0707学习了解。欢迎关注“达内在线”参与分销,赚更多好礼。