Chapter 16. Threads

In this chapter you'll investigate the facilities Java has that enable you to overlap the execution of segments of a single program. As well as ensuring your programs run more efficiently, this capability is particularly useful when your program must, of necessity, do a number of things at the same time: for example, a server program on a network that needs to communicate with multiple clients. As you'll see in Chapter 18, threads are also fundamental to any Java application that uses a graphical user interface (GUI), so it's essential that you understand how threads work.

In this chapter you'll learn:

  • What a thread is and how to create threads in your programs

  • How to control interactions between threads

  • What synchronization means and how to apply it in your code

  • What deadlocks are and how to avoid them

  • How to set thread priorities

  • How to get information about the threads in your programs

Get Ivor Horton's Beginning Java™ 2, JDK™ 5th Edition now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.