Java Threads, 3rd Edition View Larger Image | Scott Oaks, Henry Wong O'Reilly Media, Paperback, 3rd edition, Published September 2004, 340 pages, ISBN 0596007825 | List Price: $39.95 Our Price: $24.95 You Save: $15.00 (38% Off)
| | | Availability: Out-Of-Stock |
Be the First to Write a Review and tell the world about this title!People who purchase this book frequently purchase: - Java Network Programming, 3rd Edition; Elliotte Rusty Harold, $25.50, 36% Off!
- Head First Design Patterns; Eric Freeman, et al, $28.50, 37% Off!
- Hardcore Java; Robert Simmons, $24.95, 38% Off!
- Java Performance Tuning, 2nd Edition; Jack Shirazi, $27.95, 38% Off!
Books on similar topics, in best-seller order:Books from the same publisher, in best-seller order:
Threads are essential to Java programming, but learning to use them effectively
is a nontrivial task. This new edition of the classic Java Threads shows you how
to take full advantage of Java's threading facilities and brings you up-to-date
with the watershed changes in Java 2 Standard Edition version 5.0 (J2SE 5.0).
It provides a thorough, step-by-step approach to threads programming.
Java's threading system is simple relative to other threading systems. In earlier
versions of Java, this simplicity came with tradeoffs: some of the advanced
features in other threading systems were not available in Java. J2SE 5.0 changes
all that: it provides a large number of new thread-related classes that make
the task of writing multithreaded programs that much easier.
You'll learn where to use threads to increase efficiency, how to use them effectively,
and how to avoid common mistakes. This book discusses problems like deadlock,
race conditions, and starvation in detail, helping you to write code without
hidden bugs.
Java Threads, Third Edition, has been thoroughly expanded and revised. It incorporates
the concurrency utilities from java.util.concurrent throughout. New chapters
cover thread performance, using threads with Swing, threads and Collection classes,
thread pools, and threads and I/O (traditional, new, and interrupted). Developers
who cannot yet deploy J2SE 5.0 can use thread utilities provided in the Appendix
to achieve similar functionality with earlier versions of Java.
Topics include:
- Lock starvation and deadlock detection
- Atomic classes and minimal synchronization (J2SE 5.0)
- Interaction of Java threads with Swing, I/O, and Collection classes
- Programmatically controlled locks and condition variables (J2SE 5.0)
- Thread performance and security
- Thread pools (J2SE 5.0)
- Thread groups
- Platform-specific thread scheduling
- Task schedulers (J2SE 5.0)
- Parallelizing loops for multiprocessor machines
In short, this new edition of Java Threads covers everything you need to know
about threads, from the simplest animation program to the most complex applications.
If you plan to do any serious work in Java, you will find this book invaluable.
Table of Contents
Preface
1. Introduction to Threads
Java Terms
About the Examples
Why Threads?
2. Thread Creation and Management
What Is a Thread?
Creating a Thread
The Lifecycle of a Thread
Two Approaches to Stopping a Thread
The Runnable Interface
Threads and Objects
3. Data Synchronization
The Synchronized Keyword
The Volatile Keyword
More on Race Conditions
Explicit Locking
Lock Scope
Choosing a Locking Mechanism
Nested Locks
Deadlock
Lock Fairness
4. Thread Notification
Wait and Notify
Condition Variables
5. Minimal Synchronization Techniques
Can You Avoid Synchronization?
Atomic Variables
Thread Local Variables
6. Advanced Synchronization Topics
Synchronization Terms
Synchronization Classes Added in J2SE 5.0
Preventing Deadlock
Deadlock Detection
Lock Starvation
7. Threads and Swing
Swing Threading Restrictions
Processing on the Event-Dispatching Thread
Using invokeLater( ) and invokeAndWait( )
Long-Running Event Callbacks
8. Threads and Collection Classes
Overview of Collection Classes
Synchronization and Collection Classes
The Producer/Consumer Pattern
Using the Collection Classes
9. Thread Scheduling
An Overview of Thread Scheduling
Scheduling with Thread Priorities
Popular Threading Implementations
10. Thread Pools
Why Thread Pools?
Executors
Using a Thread Pool
Queues and Sizes
Thread Creation
Callable Tasks and Future Results
Single-Threaded Access
11. Task Scheduling
Overview of Task Scheduling
The java.util.Timer Class
The javax.swing.Timer Class
The ScheduledThreadPoolExecutor Class
12. Threads and I/O
A Traditional I/O Server
A New I/O Server
Interrupted I/O
13. Miscellaneous Thread Topics
Thread Groups
Threads and Java Security
Daemon Threads
Threads and Class Loading
Threads and Exception Handling
Threads, Stacks, and Memory Usage
14. Thread Performance
Overview of Performance
Synchronized Collections
Atomic Variables and Contended Synchronization
Thread Creation and Thread Pools
15. Parallelizing Loops for Multiprocessor Machines
Parallelizing a Single-Threaded Program
Multiprocessor Scaling
Appendix: Superseded Threading Utilities
Index
About the Author
Scott Oaks is a Java Technologist at Sun Microsystems, where
he has worked since 1987. While at Sun, he has specialized in many disparate
technologies, from the SunOS kernel to network programming and RPCs. Since 1995,
hes focused primarily on Java and bringing Java technology to end-users.
Scott also authored OReillys Java Security, Java Threads and Jini
in a Nutshell titles.
Henry Wong is a tactical engineer at Sun Microsystems, where
he has worked since 1989. Originally hired as a consultant to help customers
with special device drivers, kernel modifications, and DOS interoperability
products, Henry has also worked on Solaris ports, performance tuning projects,
and multithreaded design and implementations for benchmarks and demos. Since
early 1995, Henry has been involved in developing Java prototypes and supporting
customers who are using Java. Prior to joining Sun, Henry earned a bachelor
of science degree in chemical engineering from The Cooper Union in 1987. He
joined a small software company in 1986 working on SCSI device drivers, image
and audio data compression, and graphics tools used for a medical information
system. When not in front of a computer, Henry is an instrument rated private
pilot, who also likes to dabble in archery, cooking, and traveling to different
places with his wife, Nini.
|