StudyToCert

All certifications / OCP Java / Lessons

Oracle Certified Professional: Java SE Developer 1Z0-831 (Java SE 25) · Domain 8: Managing concurrent code execution

ExecutorService, Callable and Future; shutdown, awaitTermination, close()

▶ Watch the overview video

Last reviewed September 25, 2026 · Leer en español

An ExecutorService separates submitting tasks from deciding which threads run them. You create one with factory methods in Executors: newSingleThreadExecutor() runs tasks one at a time in order, newFixedThreadPool(n) uses n reusable threads, newCachedThreadPool() grows and shrinks as needed, newScheduledThreadPool(n) runs tasks after a delay or periodically, and newVirtualThreadPerTaskExecutor() uses a new virtual thread per task.

Free account

Keep reading for free

Create a free StudyToCert account to read the rest of this lesson: 5 more sections, 5 key terms, a real-world example, an exam tip and self-check questions. Every lesson, lab and practice test is free with an account.

Sign up free Log in

Study OCP Java for free
A week-by-week plan with every lesson, quizzes, checkpoint tests, a practice exam and hands-on labs.
Open the OCP Java study plan