是不是要实现每个线程的具体操作, 就需要重新定义run(), 也就是说创建了新的线程后,它的所有操作都在run()方法中.
也就是说新线程想要干什么,必须在run()定义, 用start()启动线程后, run()中所定义的就会被执行??很迷茫,望大家帮帮忙, 帮我解释一下!多谢!
也就是说新线程想要干什么,必须在run()定义, 用start()启动线程后, run()中所定义的就会被执行??很迷茫,望大家帮帮忙, 帮我解释一下!多谢!
public void taskA() throws Exception{
Thread.sleep(10000); // wait for 10 seconds
} public void taskB() throws Exception{
Thread.sleep(10000);
}
}taskA和taskB这两个函数都需要运行10秒钟,你如果想然这两个函数同时运行的话就必须把它们分别放在两个线程里:public class TaskAThread extends Thread{
private Tasks tasks;
public TaskAThread(Tasks tasks){
this.tasks = tasks;
} public void run(){
tasks.taskA();
}
}public class TaskBThread extends Thread{
private Tasks tasks;
public TaskBThread(Tasks tasks){
this.tasks = tasks;
} public void run(){
tasks.taskB();
}
}
public class Main{
public static void main(String[] args){
Tasks tasks = new Tasks();
TaskAThread ta = new TaskAThread(tasks);
TaskBThread tb = new TaskBThread(tasks);
ta.start();
tb.start();
}
}