导航:首页 > 编程语言 > java线程中断重启

java线程中断重启

发布时间:2022-07-06 20:16:21

『壹』 java中如何中断线程

1: 给你的线程类抄一个标识符袭,然后在循环中对这个标志做判断,如果为false则跳出循环,自动结束线程(线程在run()里面执行完就自动关闭了),而你可以再线程外对这个标识符做控制。2: 对线程对象调用interrupt(),这样在run中使用sleep,wait等方法时自动抛出一个InterruptedException异常,在catch里面可以跳出循环。

『贰』 java 多线程 重启

您好,线程停止了就结束了,所以你若想让你一个线程停止了又能再重新开始,那只能让这个线程sleep。
如下一段代码就可以实现你的需求了,希望你能看懂!!

package com.lxh.;

public class ThreadRestart extends Thread {

private static int i = 0;

@Override
public void run() {
while(true) {
// 这里用来判断线程是否继续停止,不执行代码逻辑
if(i == 1) {
try {
sleep(100);
System.out.println("........");
continue;
} catch (InterruptedException e) {
e.printStackTrace();
}
}

// 假设这是你线程中的一段逻辑
{
System.out.println("Happy Happy....");
}
}
}

public static void main(String[] args) throws Exception {
ThreadRestart threadTest = new ThreadRestart();
threadTest.start();

for (int j = 0; j < 20; j++) {
// 假设执行如下一段代码逻辑时,让线程threadTest执行
{
i = 0;
Thread.sleep(2000);
}

// 假设执行如下的一段代码逻辑后,让线程threadTest停止执行
{
i = 1;
Thread.sleep(2000);
}
}

// 退出整个程序
System.exit(0);
}
}

『叁』 如何正确地中断java线程

1.  使用退出标志,使线程正常退出,也就是当run方法完成后线程终止。 
2.  使用stop方法强行终止线程(这个方法不推荐使用,因为stop和suspend、resume一样,也可能发生不可预料的结果)。 
3.  使用interrupt方法中断线程。 

『肆』 在java中什么办法可以让线程停止然后再重新启动它

1.你可以用布尔值来抄控制是否让袭线程运行。例:while(boolean isLive){} 当isLive为true线程就运行,否则不运行。
2.你可以用对象。例:while(Object o != null)当对象存在的时候线程就运行,否则不运行!
3.你可以用wait()方法来让线程等待,然后用notify()、notifyAll()在适当的时候唤醒线程、或者唤醒所有在些等待的线程!
例:一个挺不错的例子---吃馒头和做馒头。
一个线程做馒头,做好了放在篮子里(容量为10)。
一个线程吃馒头,从篮子里拿馒头吃(如果篮里有馒头)。
还有一点就是为了看到明显的等待效果,用一个随机数来决定做和吃的速度。这样就不会行成做一个,吃一个,篮子永远装不满的不理想效果!(最好就是做稍快于吃)
这时,当篮子满了,你就应该调用wait()方法来让做的线程等待,让吃的线程将篮子腾出空间放馒头。同时,吃的线程也应该通知做的线程可以做馒头了(就应该调用notify()来唤醒做的线程)。
这个例子应该就是你想要的“停止”后再重新启动吧!
如果你说的是完全停止(死了),那就不行了!

『伍』 JAVA 线程重新启动问题

这个run函数的主体是一个while循环,既然没有break语句,那线程就不会结束。捕获异常以后会继续下一次循环。
更不需要start,因为已经start了。。。

『陆』 java线程发生异常时怎么重新启动这个线程

1.主线程写个循环3次的循环
2.循环体内运行线程,运行完以后调用wait()等待
3.线程在运行,如果出异常notifyAll()唤醒主线程继续循环

『柒』 关于JAVA线程的暂停,开启与结束

java线程没有暂停功能的,你的A类如果想实现暂停和重启,必须在一个无限循环里,然后通过锁来实现。

『捌』 Java线程中断机制是怎么回事

在 java中启动线程非常容易,大多数情况下我是让一个线程执行完自己的任务然后自己停掉,但是有时候我们需要取消某个操作,比如你在网络下载时,有时候需 要取消下载。实现线程的安全中断并不是一件容易的事情,因为Java并不支持安全快速中断线程的机制。

『玖』 java学习之中断线程以及如何处理中断

通过条件变量控制线程的执行,线程内部检查变量状态,外部改变变量值可控制停止执行。为保证线程间的即时通信,需要使用使用volatile关键字或锁,确保读线程与写线程间变量状态一致。下面给一个最佳模板:
/**
* @author bruce_sha (bruce-sha.github.io)
* @version
*/
public class BestPractice extends Thread {
private volatile boolean finished = false; // ① volatile条件变量
public void stopMe() {
finished = true; // ② 发出停止信号
}
@Override
public void run() {
while (!finished) { // ③ 检测条件变量
// do dirty work // ④业务代码
}
}
}

『拾』 JAVA中如何让一个线程意外终止后重新启动

新建一个线程,一直循环,每隔5分钟调用那6个Tread的isAlive()方法进行判断,如果返回为false则调用它们的start()方法。

阅读全文

与java线程中断重启相关的资料

热点内容
如何让网络自动连接wifi密码是什么 浏览:113
cmd中怎么更改文件名 浏览:724
如何显示桌面的隐藏文件 浏览:589
pop3java进行判断新邮件 浏览:518
网络语飘了是什么意思 浏览:691
我的世界手机版各版本区别吗 浏览:428
1年半的苹果6换购 浏览:973
苹果系统file文件夹 浏览:373
妖界奇缘vip升级 浏览:715
excel如何拆分数据 浏览:266
可购买股票的app有哪些 浏览:459
查看wifi流量使用情况 浏览:766
win7共享文件夹给特定用户 浏览:909
browserdetectjs下载 浏览:310
iphone5升921 浏览:950
nodejsdemo下载 浏览:937
如何让游戏更流畅下载什么app 浏览:680
手机锁屏忘记了怎么解锁密码 浏览:643
四同步四对接指哪些文件 浏览:396
康洲大数据 浏览:448