gpt4 book ai didi

java - shutdown 和 awaitTermination 哪个第一次调用有什么区别?

转载 作者:IT老高 更新时间:2023-10-28 20:56:41 29 4
gpt4 key购买 nike

有什么区别

ExecutorService eService = Executors.newFixedThreadPool(2);
eService.execute(new TestThread6());
eService.execute(new TestThread6());
eService.execute(new TestThread6());
eService.awaitTermination(1, TimeUnit.NANOSECONDS);
eService.shutdown();

eService.shutdown();
eService.awaitTermination(1, TimeUnit.NANOSECONDS);

我不太懂shutdown()。此方法不等待先前提交的任务完成执行。这是否意味着 shutdown() 可以终止已提交但未完成的任务?我尝试了一些例子,他们没有证明这一点,请给我一个例子。

最佳答案

你应该先调用shutdown。否则,您可能会等待很长时间,因为 awaitTermination 实际上并没有关闭您的执行程序。

如果你想等待任务完成,而不是等待执行器关闭,那么你应该使用invokeAll

关于java - shutdown 和 awaitTermination 哪个第一次调用有什么区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18425026/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com