本帖最后由 熊永标 于 2013-4-11 14:24 编辑
继承至thread类所创建的线程不能多次启动,
TestThread tt = new TestThread();
tt.start();
tt.start();
tt.start();
tt.start();
同是一个线程对象,你启动了四次,当然会报IIIegalThreadStateException异常了,而第二个能正常,是因为每次都会先new一个线程对象出来,然后再启动,每个对象只启动一次,所以运行正常
TestThread tt = new TestThread();
new Thread(tt).start();
new Thread(tt).start();
new Thread(tt).start();
new Thread(tt).start();
tt实现了Runnable接口,所以把Thread传递到Thread的构造函数,是可以接受的,这样在每次启动线程时,就不会出错了. |