Java Thread Programming
- 14 Hour Online Class or 2 Day Classroom Workshop
An overview of threads covering all the the thread facilities present in the Java JDK, for developers of major Java applications. Introduces threads and their usefulness, and covers concurrent execution, thread mechanics, threads and memory, and Java threads; thread basics including the thread class, extend thread, writing a runnable class, thread control, pausing and stopping a thread and the current thread; thread states (new, runnable, interrupting, dead); thread priority, scheduling and starvation, and time slicing; thread safety including race conditions, synchronization, controlling sequence, wait() and notify(), deadlock and more; additional thread features; controlling threads; using timers and delays; and deprecated methods such as stop(), destroy(), suspend() and resume().
Threads are commonly used in any non-trivial Java applications. This course is a two day class designed to cover all the thread facilities present in the Java JDK, discuss some common thread patterns and offer strategies to avoid race conditions and deadlocks. The course will illustrate the topics covered with extensive code examples and lab work.
Audience: Anyone developing major applications in Java should benefit from this course. Even those using Java APIs that handle threading automatically can profit from a deeper understanding of Java threads.
Prerequisites: Familiarity with the basic Java language and a rudimentary understanding of threads is helpful. An introduction on threads is included to fill the knowledge gaps of those not completely familiar with the topic.
Objectives: After successfully completing this course, you will be able to:
Introduce threads and justify their need
Illustrate some common situations where threads are helpful
Get students comfortable with programming multi-threaded applications.
Explain common thread patterns and illustrate them with code examples