new Thread(r).start();/*此处是自己试着看写上的,运行发现和普通写法{Thread t1 = new Thread(r) Thread t2 = new Thread(r) ,然后再各自start() }的 效果一样。 这里这样写是否正确,为什么参数是相同对象会建立不同的线程?*/
}
}
复制代码
作者: 刘张朋 时间: 2013-7-23 23:18
new 了一个Thread就是创建了一个线程,给他传递参数是给线程分配任务,也就是说你是创建了两个线程,而他们执行的任务相同罢了作者: 陈贺 时间: 2013-7-23 23:19
这样写是正确的。new Thread()是创建了一个线程,你new了两个是两个不同的线程,里面传的相同的参数是让这两个线程都与这个对象联系起来,从而调用该对象的run方法。 作者: 黄少海 时间: 2013-7-23 23:24
你这边开启线程的条件是Thead类,你用了两个new字说明你开了两条线程.而那个参数是传递的是让你的Thread类启动的线程知道要运行的run()方法里面的代码在哪里.作者: yinjiek 时间: 2013-7-24 00:09
new Thread(r).start();
new Thread(r).start();
参数是相同但是放在了2个不同的对象中所以还是两个不同的线程,但可以运行