zoukankan      html  css  js  c++  java
  • Java多线程编程核心(1)

    Java多线程编程核心(1)

    停止线程

    本节主要讨论如何更好停止一个线程。停止线程意味着在线程处理完成任务之前放弃当前操作。

    1.停不了的线程
    可能大多数同学会使用interrupt()来停止线程,但是此方法并不能真的停止线程,仅仅是在当年线程中打了一个停止标记。
    
    2.判断线程是否是停止状态
    a)this.interrupted():测试当前线程是否已经中断,执行后具有将状态标志设置为false,即第二次调用此方法时,返回false.
    b)this。isInterrupted():测试线程是否已经中断,不清楚状态标记。
    
    3.异常法停止线程
    建议使用此类方法,可以将线程停止的异常往上抛,使线程停止的事件得到传播
    
    4.在沉睡中停止线程
    sleep()+interrupt()
    
    5.暴力停止线程
    使用stop()停止。stop()方法在jdk6.0之后的版本已经作废。因为强制停止线程,有可能使一些请理性工作无法完成,再者对锁定的对象进行了解锁,导致数据不能进行同步处理,出现数据不一致。不建议使用。
    6.return停止线程
    interrupt() + return 
    
  • 相关阅读:
    markdown 常用语法 (在macdown内使用正常)
    C# MessageBox常用用法
    C# 正则表达式匹配汉字
    C# 可视化读取文件、文件夹
    Xcode UUID查询
    Xcode 常用快捷键
    iOS __weak __strong WeakSelf StrongSelf
    iOS 图形图像动画 Core Animation
    iOS Runtime学习笔记
    iOS NSDate本地化
  • 原文地址:https://www.cnblogs.com/lanxuan826/p/9873696.html
Copyright © 2011-2022 走看看