如何实现线程监视呢?一共三个类 均继承了Thread
其中一个读数据 一个写数据 一个监视这两个线程是否死亡 死亡则重启这两个线程如何实现呢?
其中一个读数据 一个写数据 一个监视这两个线程是否死亡 死亡则重启这两个线程如何实现呢?
解决方案 »
- 怎么验证float和char的取值范围
- 请教一下新手学jsp的问题
- Java 线程问题,请教~~~~
- 哪位大侠能帮我分析一下这个程序的运行结果为什么是这样的吗?要怎么修改才能得到我想要的结果?
- 编写一个类,名为Singleton.java实现功能如下: Singleton类只存在一个实例(只能被实例化一次)。
- 高手请进:能否用JAVA来实现更换WXP桌面背景的功能??
- 【求助】这是怎么回事?!?!?!?!?!??!?!?!?!?!?!?!?
- jtable中的Date类型数据为什么不能更改???
- 使用dom4j能读取excel生成的xml文件吗?
- 一个类里边不写构造函数行不行
- tomcat-deployer.zip和tomcat.zip有什么功能上的区别呢?
- 请教MYSQL问题
public class Test{
public static void main(String[] args){
Mon mon = new Mon();
mon.start();
}
}class Send extends Thread{
public void run(){
System.out.println("---send");
}
}class Get extends Thread{
public void run(){
System.out.println("---get");
}
}class Mon extends Thread{
private Send send;
private Get get;
public Mon(){
super();
}
public void run(){
while(true){
System.out.println("mon");
if(send.isAlive() == false){
send.start();
}
if(get.isAlive() == false){
get.start();
}
}
}
}
import java.lang.Thread;
public class Test{
public static void main(String[] args){
Mon mon = new Mon();
mon.start();
}
}class Send extends Thread{
public void run(){
System.out.println("---send");
}
}class Get extends Thread{
public void run(){
System.out.println("---get");
}
}class Mon extends Thread{
private Send send;
private Get get;
public Mon(){
super();
}
public void run(){
send = new Send(); // 要先初始化那个进程,否则下面调用isAlive()方法时会有空指针
get = new Get();
send.start(); //启动两个进程
get.start();
while(true){
if(send.isAlive() == false){
send = new Send();
send.start(); //java thread完成后,不能直接重启,要重新建立
}
if(get.isAlive() == false){
get = new Get();
get.start();
}
try {
Thread.sleep(1000); // 当thread停一下,把CPU时间留给其它线程。
} catch (InterruptedException e) {
e.printStackTrace();
}
}
}
}