java监听线程
❶ java自定义事件,线程a如何每一秒钟触发一个事件,然后另一个线程b监听之,并作出反应
线程a是作为事件源,那么线程a这个类就必须提供一个可以增加监听器的方法,就像GUI编程中的addActionListener这个样的方法。线程a这个类里面是有一个专门存放监听器的一个容器,例如是list。然后你 增加监听器的方法就是把监听器放进这个容器里面。你用一个监听器去监听一个事件的发生,就可以在线程a这个类中,写一个产生事件的一段代码,然后每当产生一个事件之后,去遍历list,去调用监听器的对于这个事件的处理方法,这样子就可以了。这应该就是java中的事件模式。
❷ java中的事件监听是怎样实现随时监听的,是通过线程吗
是,java虚拟机提供了一个事件监听线程(即用户界面线程)。
❸ 如何监视Java多线程的状态
线程池的地方在新增或者删除线程的时候加一个debug信息。 如果在命令行下面启动的话用ctrl + break就可以看到当前哪些线程在运行了。。。
❹ java中的事件监听是怎样实现随时监听的,是通过线程吗
java中的事件监听不是通过线程实现的,它是通过一种注册--通知机制实现的。在java的设计模式中,有一种模式叫:观察者模式,和这个类似。
❺ java如何监控线程是否在运行
判断是否在运行用isAlive方法哈。。
给你写了个例子。。不知是不是你想要的。。
public class Thread100 {
/**
* @param args
*/
public static ThreadA ta = new ThreadA();
public static ThreadB tb = new ThreadB();
public static void main(String[] args) {
ta.start();
tb.start();
}
}
class ThreadA extends Thread {
@Override
public void run() {
int i = 0;
while(i < 100) {
if(Thread100.tb.isAlive()) {
System.out.println("B is alive");
}
System.out.println(i);
i++;
}
}
}
class ThreadB extends Thread {
@Override
public void run() {
int i = 0;
while(i < 100) {
if(Thread100.ta.isAlive()) {
System.out.println("A is alive");
}
System.out.println(i);
i++;
}
}
}
❻ java中能否监听一个线程是否结束 我希望在当前线程结束时写日志
线程结束的标志是run()函数执行完毕。如果你要判断的话 用 线程名.isAlive();