1.7.8使用return 停止线程
- package com.cky.thread;
- /**
- * Created by edison on 2017/12/3.
- */
- public class MyThread12 extends Thread{
- @Override
- public void run() {
- super.run();
- for (int i = 0; i < 50000; i++) {
- if (Thread.interrupted()) {
- System.out.println("子线程已经停止了,我要退出");
- return;
- }
- System.out.println("i="+(i+1));
- }
- System.out.println("for循环后继续执行");
- }
- }
- package com.cky.test;
- import com.cky.thread.MyThread12;
- /**
- * Created by edison on 2017/12/3.
- */
- public class Test {
- public static void main(String[] args) {
- try {
- MyThread12 myThread12 = new MyThread12();
- myThread12.start();
- Thread.sleep(2);
- myThread12.interrupt();
- } catch (InterruptedException e) {
- e.printStackTrace();
- }
- }
- }
- i=137
- i=138
- i=139
- i=140
- i=141
- i=142
- i=143
- i=144
- i=145
- 子线程已经停止了,我要退出
用return也能停止线程,不过还是建议抛出异常的方法,因为可以继续往上抛出,让事件传播
1.7.8使用return 停止线程的更多相关文章
- Java 学习笔记之 Return停止线程
Return停止线程: 使用interrupt()和return结合也可以实现停止线程的效果.不过还是建议使用“抛异常“的方法,因为在catch块中可以将异常向上抛,使线程停止的事件得以传播. pub ...
- java线程之停止线程
在Java中有以下3种方法可以终止一个正在运行的线程: 1.使用退出标志,是线程正常退出,也就是run方法完成后线程终止. 2.使用stop方法强制终止线程,但不推荐使用 ...
- java并发之停止线程
停止一个线程意味着在任务处理完任务之前停掉正在做的操作,也就是放弃当前的操作.停止一个线程可以用Thread.stop()方法,但最好不要用它.虽然它确实可以停止一个正在运行的线程,但是这个方法是不安 ...
- Thread之十:停止线程方法汇总
在上篇文章<多线程的使用——Thread类和Runnable接口>中提到中断线程的问题.在JAVA中,曾经使用stop方法来停止线程,然而,该方法具有固有的不安全性,因而已经被抛弃(Dep ...
- Java 创建线程/停止线程
继承 Thread 类 class MyThread1 extends Thread{ @Override public void run(){ System.out.println("继承 ...
- 深入理解Java中停止线程
一.停止线程会带来什么? 对于单线程中,停止单线程就是直接使用关键字return或者break,但是在停止多线程时是让线程在完成任务前去开启另外一条线程,必须放弃当前任务,而这个过程是不可预测,所以必 ...
- java停止线程
本文将介绍jdk提供的api中停止线程的用法. 停止一个线程意味着在一个线程执行完任务之前放弃当前的操作,停止一个线程可以使用Thread.stop()方法,但是做好不要使用它,它是后继jdk版本中废 ...
- Java 学习笔记之 Stop停止线程
Stop停止线程: 使用stop()方法停止线程是非常暴力的,会抛出java.lang.ThreadDeath Error,但是我们无需显示捕捉, 以下捕捉只是为了看得更清晰. public clas ...
- interrupt 停止线程
该方法只是给线程设置了一个停止的标记 并不是真正的立即停止线程 interrupted() 测试当前线程是否已经中断 isInterrupted() 测试线程是否已经中断 停止线程的方法: .异常法 ...
随机推荐
- MVC中Ajax post 和Ajax Get——提交对象
HTTP 请求:GET vs. POST两种在客户端和服务器端进行请求-响应的常用方法是:GET 和 POST.GET - 从指定的资源请求数据POST - 向指定的资源提交要处理的数据GET 基本上 ...
- Python 字符串 (isdigit, isalnum,isnumeric)转
Python isdigit() 方法检测字符串是否只由数字组成. 语法 isdigit()方法语法: str.isdigit() 参数 无. 返回值 如果字符串只包含数字则返回 True 否则返回 ...
- andorid 练习微信登陆
AndroidManifest.xml layout1.xml <?xml version="1.0" encoding="utf-8"?> < ...
- BZOJ1791或洛谷4381 [IOI2008]Island
一道基环树的直径 BZOJ原题链接 洛谷原题链接 又是一道实现贼麻烦的题.. 显然公园其实是基环树森林,求的最长距离其实就是求每一棵基环树的直径的总和. 对于每棵基环树,其直径要么经过环,要么是某个环 ...
- Mongodb数据导出工具mongoexport和导入工具mongoimport介绍(转)
原文地址:http://chenzhou123520.iteye.com/blog/1641319 一.导出工具mongoexport Mongodb中的mongoexport工具可以把一个colle ...
- 网页启用Gzip压缩 提高浏览速度
启用Gzip压缩的好处 它的好处显而易见,提高网页浏览速度,无论是之前说的精简代码.压缩图片都不如启用Gzip来的实在.下图为启用Gzip后的效果. Gzip压缩效率非常高,通常可以达到70%的压缩率 ...
- NC 5的开发环境起不了客户端
5的开发环境,中间件启动无异常,但是在起客户端时报错,连中间件也关闭了. 添加图中两个jdk下的包
- [Robot Framework] 如何在Setup中用Run Keywords执行多个带参数的关键字
参考文档:http://www.howtobuildsoftware.com/index.php/how-do/bZ7q/robotframework-setup-teardown-robot-fra ...
- 高级设计总监的设计方法论——5W1H需求分析法 KANO模型分析法
本期开始进入设计方法论的学习,大湿自己也是边学边分享,算是巩固一遍吧: 另外这些理论基本都是交叉结合来应用于工作中,我们学习理论但不要拘泥于理论的框架中,掌握后要灵活运用一点- 这些理论一部分来自于我 ...
- JDK8集合类源码解析 - HashSet
HashSet 特点:不允许放入重复元素 查看源码,发现HashSet是基于HashMap来实现的,对HashMap做了一次“封装”. private transient HashMap<E,O ...