怎么利用线程的机制,请教

04-06-09 zhangpiwang
import javax.swing.*;
import java.io.*;
class TestThread extends java.lang.Thread{
public TestThread(){
}
public static boolean Loop = true;
public final static int MILLIS =1000 ;
public void run(){
while (Loop){
try{
java.lang.Thread.currentThread().sleep(MILLIS);
doFunction();
}catch(InterruptedException e){}
}
}
public void doFunction(){
System.out.println("Test Thread output ...");
}
public void startFunction(){
Loop=false;
}
public void stopFunction(){
Loop=true;
}
}
如果我的一个任务没有完成,那么sleep的时间到了,那么线程会醒来继续运行吗,那么不是乱了套了么.应该用什么相关技术?
是不是我用一个线程组,里边只放两个线程,当timer来临时候,如果线程A运行没有结束,那么我就不启动线程B去继续执行同一个任务.只有当A结束时候,我就开始启动B,不过这

个时候我也可以启动A了.因为A已经闲了下来,也是说线程组中没有运行的线程肋那么启动新的线程.怎么建立这个schedule机制呢?

banq
2004-06-11 15:32
你让它sleep指定时间后就会醒来运行,建议参考线程方面书籍。

fiddle
2004-06-15 17:12
正常情况下,除非是网络或者其他阻塞式任务编程,否则先不要考虑多线程,不要想当然的认为多线程的效率高。

猜你喜欢