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

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
正常情况下,除非是网络或者其他阻塞式任务编程,否则先不要考虑多线程,不要想当然的认为多线程的效率高。

猜你喜欢