示例代码:
public static void main(String[] args) {
System.out.println(Thread.currentThread().getName() + ":" + Thread.interrupted());
//中断主线程
Thread.currentThread().interrupt();
//执行isInterrupted不会重置中断信号
System.out.println(Thread.currentThread().getName() + ":" + Thread.currentThread().isInterrupted());
long start = System.currentTimeMillis();
try {
TimeUnit.SECONDS.sleep(2);
} catch (InterruptedException e) {
System.out.println((System.currentTimeMillis() - start) + "ms后中断了");
}
}
运行结果:
可以发现,如果一个线程在没有执行可中断方法之前就被打断,会立即中断执行可中断方法,所以才几乎会是0ms。
本文地址:https://blog.csdn.net/weixin_38106322/article/details/107370576
如对本文有疑问, 点击进行留言回复!!
[杭电多校2020]第一场 1004 Distinct Sub-palindromes
Swift -- 将本地生成的UIImage进行持久化保存(存到文件中fileManager.createFile)
网友评论