我有一个线程,代码为:
class Mythread extends Thread {
public void run(){
........(自定义代码)
excute();
.........(自定义代码)
}
}
现在的问题是在run()方法里面必须有excute()方法,而excute()未知,可能是下载文件程序,也可能是其他程序,就是说不考虑excute()的具体代码。run()里面的(自定义代码),可有可无,要实现暂停的功能,如果你认为需要加一些代码,就可以在自定义代码里面加,当然你认为没有必要,则自定义代码为空,run()方法里就只有一个excute(),当线程在运行的时候,我怎么样使线程暂停下来,然后又继续开始。不知道大家懂我的意思么?
class Mythread extends Thread {
public void run(){
........(自定义代码)
excute();
.........(自定义代码)
}
}
现在的问题是在run()方法里面必须有excute()方法,而excute()未知,可能是下载文件程序,也可能是其他程序,就是说不考虑excute()的具体代码。run()里面的(自定义代码),可有可无,要实现暂停的功能,如果你认为需要加一些代码,就可以在自定义代码里面加,当然你认为没有必要,则自定义代码为空,run()方法里就只有一个excute(),当线程在运行的时候,我怎么样使线程暂停下来,然后又继续开始。不知道大家懂我的意思么?
wait();
和
notify();用法不写了,GOOGLE之
楼主学线程的时候应该有接触到哦
否则用sleep()也可以的
支持sleep和使用共享变量补充一下,如果在循环中使用wait()和使用notifyAll()而不是notify()。需要处理好InterruptedException,以方便程序合理退出。