java重新启动线程_重新启动java线程

我想知道为什么ExecutorService实际上可以多次执行相同的Thread.

因为线程的通常生命周期终止于TERMINATED afaik ..

所以,

public class TestThread extends Thread {

AtomicInteger counter = new AtomicInteger(0);

@Override

public void run() {

System.out.printf("%d\n", counter.addAndGet(1));

}

public static void main(String[] args) throws InterruptedException {

ExecutorService es = Executors.newCachedThreadPool();

TestThread t = new TestThread();

es.execute(t);

es.execute(t);

es.shutdown();

}

}

这适用于我实际上期望非法状态异常,如在这种情况下:

t.start();

t.start(); =>BAM!

非常感谢解开执行背后的魔力!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值