Multithreading and Concurrency in Java: Scaling a Multithreaded Application
Overview/Description
Expected Duration
Lesson Objectives
Course Number
Expertise Level
Overview/Description
Creating and managing multiple concurrent threads manually can be painstaking, but Java includes objects that make this much simpler. This course will help you gain experience using objects such as Java's ExecutorService and the Fork/Join framework that make it easy to write scalable multithreaded applications. You will get hands on with these objects and will recognize their use cases, features and their limitations.
Expected Duration (hours)
1.4
Lesson Objectives Multithreading and Concurrency in Java: Scaling a Multithreaded Application
discover the key concepts covered in this course
create an ExecutorService instance to manage a pool of thread workers and submit tasks to it
use a CountDownLatch to synchronize with the execution of threads submitted to an ExecutorService
describe how an ExecutorService instance can be shut down while still allowing submitted tasks to run
distinguish between the graceful and immediate shutdown of an ExecutorService instance
recognize the options available to monitor the execution of a task using a Future object
implement the Callable interface to define a task that can run in a thread and returns a result
schedule one-off tasks to execute at a specified point in the future using the ScheduledExecutorService
schedule recurring tasks to execute at a set interval using the ScheduledExecutorService
use the Fork/Join framework to break up a large task into a number of smaller sub-tasks
submit a large task to ForkJoinPool and recognize how these can be split into smaller sub-tasks
summarize the key concepts covered in this course
Course Number: it_jmmtcjdj_06_enus
Expertise Level
Intermediate