Chapter 9. Threads

Exam Objectives

  • Write code to define, instantiate, and start new threads using both java.lang.Thread and java.lang.Runnable.

  • Recognize conditions that might prevent a thread from executing.

  • Write code using synchronized, wait(), notify(), and notifyAll() to protect against concurrent access problems and to communicate between threads.

  • Define the interaction among threads and object locks when executing synchronized wait(), notify(), or notifyAll().

Supplementary Objectives

  • Understand thread states and the transitions between them.