shutdown i awaitTermination, które pierwsze połączenie ma jakąś różnicę?
Jaka jest różnica pomiędzy
ExecutorService eService = Executors.newFixedThreadPool(2);
eService.execute(new TestThread6());
eService.execute(new TestThread6());
eService.execute(new TestThread6());
eService.awaitTermination(1, TimeUnit.NANOSECONDS);
eService.shutdown();
i
eService.shutdown();
eService.awaitTermination(1, TimeUnit.NANOSECONDS);
Naprawdę nie rozumiemshutdown()
. Ta metoda nie czeka na zakończenie wcześniej przesłanych zadań. Czy to znaczyshutdown()
może zakończyć zadania, które zostały złożone, ale nie zakończone? Próbowałem kilku przykładów, nie dowodzą tego, proszę dać mi przykład.