【Java多线程】-线程中断

涉及到线程中断的方法有以下三个:

  • public void interrupt():将线程的中断状态设置为true;
  • public static boolean interrupted():判断当前线程的中断状态;
  • public boolean isInterrupted():判断某个线程的中断状态

package org.iti.thread;

public class ThreadDemo_4 {

	public static void main(String[] args) {
		MThread mThread = new MThread("MThread");
		mThread.start();
		try {
			Thread.sleep(5l);
		} catch (InterruptedException e) {
			e.printStackTrace();
		}
		System.out.println(mThread.getName()+"当前中断状态为:" + mThread.isInterrupted());
		mThread.interrupt();
		System.out.println(mThread.getName()+"当前中断状态为:" + mThread.isInterrupted());
	}
}

class MThread extends Thread {
	public MThread(String threadName) {
		super(threadName);
	}

	int i = 0;

	@Override
	public void run() {
		while (!isInterrupted()) {
			System.out.println("当前i的值为:" + i++);
		}
	}

}

输出结果:

当前i的值为:0
当前i的值为:1
当前i的值为:2
当前i的值为:3
当前i的值为:4
当前i的值为:5
当前i的值为:6
当前i的值为:7
当前i的值为:8
当前i的值为:9
当前i的值为:10
当前i的值为:11
当前i的值为:12
当前i的值为:13
当前i的值为:14
当前i的值为:15
当前i的值为:16
当前i的值为:17
当前i的值为:18
当前i的值为:19
当前i的值为:20
当前i的值为:21
当前i的值为:22
当前i的值为:23
当前i的值为:24
当前i的值为:25
当前i的值为:26
当前i的值为:27
当前i的值为:28
当前i的值为:29
当前i的值为:30
当前i的值为:31
当前i的值为:32
当前i的值为:33
当前i的值为:34
当前i的值为:35
当前i的值为:36
当前i的值为:37
当前i的值为:38
当前i的值为:39
当前i的值为:40
当前i的值为:41
当前i的值为:42
当前i的值为:43
当前i的值为:44
当前i的值为:45
当前i的值为:46
当前i的值为:47
当前i的值为:48
当前i的值为:49
当前i的值为:50
当前i的值为:51
当前i的值为:52
当前i的值为:53
当前i的值为:54
当前i的值为:55
当前i的值为:56
当前i的值为:57
当前i的值为:58
当前i的值为:59
当前i的值为:60
当前i的值为:61
当前i的值为:62
当前i的值为:63
当前i的值为:64
当前i的值为:65
当前i的值为:66
MThread当前中断状态为:false
当前i的值为:67
MThread当前中断状态为:true




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值