我不确定问题到底是什么,但是由于某种原因,我无法从两个类中获取线程来同时运行。我可以从一个类中同时运行多个线程,但是当我尝试启动另一个类时,什么也没有发生。
public professor(){
prof = new Thread();
prof.start();
System.out.println("Prof has started1");
}
public void run(){
try{
System.out.println("Prof has started2");
prof.sleep(600);
//do more stuff
}
catch(Exception e){
System.out.println("Prof error");
}
这就是我开始第二堂课的方式,第一堂课以完全相同的方式开始并且运行良好。但是,在该类中显示“教授已开始1”,但第二个从不显示。
我想念什么吗?
最佳答案
我认为这是原因
prof = new Thread();
prof.start();
此代码永远不会调用您自己的
run()
方法,如果您的类实现了runnable接口,则应这样做prof = new Thread(this)
prof.start()`