InterruptDemo.class
package com.jdk.api.demo;
枷锁时,io 中断不起作用。
中断只对wait sleep 等函数起作用
public class InterruptDemo {
public static void main(String[] args) throws InterruptedException{
Thread run = new Thread(new RunClass0());
run.start();
System.out.println("isDaemon:"+run.isDaemon());
Thread.sleep(10000);
run.interrupt();
System.out.println("isDaemon:"+run.isDaemon()+"--1--"+run.isInterrupted());
//run.isInterrupted() 不会取消终端状态
}
}
/**
* 根本不会理会 run.interrupt();的中断,代码会一直运行下去
* @author aircoder
*
*/
class RunClass implements Runnable{
@Override
public void run() {
long i=0;
while(true){
if(i==1000000000){
System.out.println("I'm still alive!");
i = 0;
System.out.println("--1--"+Thread.interrupted());//会取消中断的标志
}
else{
i++;
}
}
}
}
/**
* run.interrupt(); 执行后代码就会结束
* @author aircoder
*
*/
class RunClass0 implements Runnable{
@Override
public void run() {
long i=0;
while(true && !Thread.currentThread().isInterrupted()){//检查代码是否发生了中断
if(i==1000000000){
System.out.println("I'm still alive!");
i = 0;
}
else{
i++;
}
}
}
}
分享到:
相关推荐
控制流程中断 java中用break代替goto语句
本示例将详细探讨Java中断线程的正确方法,以确保线程安全且高效地退出。 首先,我们需要了解Java中的线程中断机制。线程中断是通过调用`Thread.interrupt()`方法来实现的,它会设置线程的中断标志。当线程正在运行...
这个概念在【标题】"Java中断言使用案例"中被强调,而【描述】进一步指出文档会探讨使用断言的优势及其用法。下面将详细阐述Java中断言的原理、好处以及如何使用。 1. **什么是Java断言**: Java断言是一种机制,...
Java中断一个线程操作示例 Java中断一个线程操作是指在某个线程正在执行任务时,强制其停止当前操作的行为。Java提供了多种方式来中断一个线程,包括interrupt()、isInterrupted()和interrupted()函数。这些函数的...
以下是关于Java中断线程的一些关键知识点: 1. **线程状态**:在Java中,线程有多种状态,包括新建、可运行、运行、阻塞、等待、超时等待和终止。中断线程主要是针对那些处于运行、阻塞或等待状态的线程。 2. **...
Java如何中断一个正在运行的线程 Java中的线程中断是指在某个线程完成任务之前停止其正在进行的...本文对Java中断一个正在运行的线程进行了详细的介绍和分析,旨在帮助读者更好地理解和掌握线程中断的知识和技能。
以下是对Java中断线程的详细解释: 1. **线程终止条件**: - 当`run`方法执行完毕。 - `return`语句执行,提前结束`run`方法。 - 出现未捕获的异常,导致`run`方法终止。 2. **`stop`方法的弃用**: Java早期...
* InterruptedException:(线程)中断异常,用于表示 Java 线程中断异常。 * Try:尝试,用于表示 Java 语言的 try-catch 语句。 * Catch:捕捉,用于表示 Java 语言的 try-catch 语句。 * Finally:最后,用于表示...
Java线程中断是一种重要的线程控制机制,允许一个线程通知另一个线程停止其执行。在Java中,中断线程主要是通过调用`Thread`对象的`interrupt()`方法来实现的。这个方法并不会立即停止目标线程,而是设置一个中断...
Java 多线程中断代码详解 Java 中断机制是多线程编程中的一种重要机制。它允许一个线程请求另一个线程停止执行某个操作或退出线程。Java 提供了多种方式来中断线程,包括使用 stop() 方法、interrupt() 方法和使用 ...
在Java编程中,线程中断是一项关键的并发控制机制,用于在多线程环境中优雅地终止或改变线程的行为。本文将深入探讨Java线程中断的本质以及编程原则。 首先,理解线程中断的本质。Java线程中断并不意味着强制停止一...
Java线程中断机制是Java多线程编程中的一个重要概念,它允许程序在执行过程中通过某种方式通知线程停止其当前的活动,以便进行资源释放或流程控制。在Java中,线程中断主要通过`Thread.interrupt()`方法实现,这个...
本节将重点讨论两种常见的异步处理策略:轮询和中断,以及它们在Java开发中的应用。 一、轮询 轮询是一种监控或检查特定条件是否满足的方法,直到该条件变为真或者达到某个预设的停止条件。在Java中,轮询通常用于...
Java线程中断是一个关键特性,它允许程序员在运行时通知一个线程停止其当前的工作并进行清理。在上述的Java线程中断示例程序中,我们看到一个简单的场景,模拟了一个班级中的学生(student线程)和教师(teacher线程...
Java中实现线程的超时中断方法实例 概述:在 Java 中实现线程的超时中断是非常重要的,特别是在熔断降级组件中。熔断降级组件需要在指定的超时时间内中断请求线程,以避免请求长时间阻塞系统资源。在这篇文章中,...
Java的线程提供了中断机制,通过`Thread.interrupt()`和`Thread.isInterrupted()`方法来控制和检查线程中断状态。在长时间运行的任务中,应定期检查中断标志,一旦检测到中断,及时清理资源并退出。 ```java ...
中断机构能发现中断事件,且当发现中断事件后迫使正在处理器上执行的进程暂时停止执行,而让操作系统的中断处理程序占有处理器去处理出现的中断事件。对不同的中断事件,由于它们的性质不同,所以操作系统应采用不同...