• JAVA-初步认识-第十四章-多线程-停止线程方式-定义标记


    一.

    线程既然开启了,运行了,冻结又恢复运行了,那什么时候消亡呢? 怎么来停止线程呢?不能一直在运行。

    线程怎么停,线程自己最清楚。在Thread类中,提供了stop方法,

    本来线程持有一个锁,只要stop,它就什么都在放,这是强制操作,无论出于什么状态,强制将其搞定。本来wait,这那儿的,stop一下子就没了。

    stop方法做的不是状态切换了,而是消失。

    线程停止,其实只有一种,就是run方法结束。

    线程一旦没有自己运行的代码了,任务没有了,线程自动就结束了。可是线程的任务怎么能没有呢?

    标记就是条件,条件的书写是多种多样的,怎么写都可以。

    以前写的while(ture)是死循环,不用想停的事儿了,除非你加上if,break。

    现在将true改成flag,就是条件标记,可以是ture-false,或是比较大小值。同时还要向外提供一个能够改变标记的方式,

     

    DOS结果显示正常,而且结束了。如果没有st.setFlag(),那么上面两个线程就结束不了。

    当我们有了标记以后,一旦步入循环了,这个程序就能停的下来。

    这种定义标记的方式,我们很常用。但是用起来,还有些解决不了的问题。

  • 相关阅读:
    有关UDP与TCP的一些疑问?
    UNP Ch 11, Name and Address Conversion
    C语言中的static关键字
    Typcical code to enable nonblocking I/O
    UNPv1_r3读书笔记: SCTP编程[转]
    用gcc链接重复定义的函数
    C语言编码风格 样例
    Chapter 3: File I/O
    getsockopt函数的使用
    开博客了
  • 原文地址:https://www.cnblogs.com/wsw-bk/p/8097401.html
Copyright © 2020-2023  润新知