这段代码执行任务时起步了几个线程
这段代码执行任务时启动了几个线程??1 楼ChinaEstone昨天只有一个timer的线程,以前理解的时候任务runable
这段代码执行任务时启动了几个线程?
?
1 楼 ChinaEstone 昨天 只有一个timer的线程,以前理解的时候任务runable接口实现,调用它的时候,都启动一个线程,现在看,其实不然。Runnable只是一个接口,实现这个接口的类型只有通过
Thread thread = new Thread(new RunnableImpl())包装启动后,才算是启动了一个新的线程。否则他就只是一个实现了接口的类。单纯实现了Runnable的类的和单纯实现一个普通接口的类一样,只有通过 Thread包装,实现后,才会创建一个新的线程。 2 楼 ChinaEstone 昨天 再举一个例子:
RunnableImpl impl = new RunnableImpl();
impl.run()
这样会启动一个新线程吗?
interface ISomeInterface {
void run()
}
class SomeImpl implements ISomeInterface {
void run(){
// todo something
}
}
SomeImpl some = new SomeImpl();
some.run()
这个会启动一个新的线程吗?
两个例子一比较,一目了然,绝对不会。