Java Concurrency in Practice

ISBN-10: 0321349601
ISBN-13: 9780321349606
Edition: 2006
List price: $59.99 Buy it from $36.75
eBook available
This item qualifies for FREE shipping

*A minimum purchase of $35 is required. Shipping is provided via FedEx SmartPost® and FedEx Express Saver®. Average delivery time is 1 – 5 business days, but is not guaranteed in that timeframe. Also allow 1 - 2 days for processing. Free shipping is eligible only in the continental United States and excludes Hawaii, Alaska and Puerto Rico. FedEx service marks used by permission."Marketplace" orders are not eligible for free or discounted shipping.

30 day, 100% satisfaction guarantee

If an item you ordered from TextbookRush does not meet your expectations due to an error on our part, simply fill out a return request and then return it by mail within 30 days of ordering it for a full refund of item cost.

Learn more about our returns policy

Description: As processors become faster and multiprocessor systems become cheaper, the need to take advantage of multithreading in order to achieve full hardware resource utilization only increases the importance of being able to incorporate concurrency in a  More...

New Starting from $43.24
eBooks Starting from $47.99
Buy
what's this?
Rush Rewards U
Members Receive:
coins
coins
You have reached 400 XP and carrot coins. That is the daily max!
You could win $10,000

Get an entry for every item you buy, rent, or sell.

Study Briefs

Limited time offer: Get the first one free! (?)

All the information you need in one place! Each Study Brief is a summary of one specific subject; facts, figures, and explanations to help you learn faster.

Add to cart
Study Briefs
Sociology Online content $4.95 $1.99
Add to cart
Study Briefs
Business Ethics Online content $4.95 $1.99
Add to cart
Study Briefs
Business Law Online content $4.95 $1.99

Customers also bought

Loading
Loading
Loading
Loading
Loading
Loading
Loading
Loading
Loading
Loading

Book details

List price: $59.99
Copyright year: 2006
Publisher: Addison Wesley Professional
Publication date: 5/9/2006
Binding: Paperback
Pages: 384
Size: 7.00" wide x 9.25" long x 0.75" tall
Weight: 1.496
Language: English

As processors become faster and multiprocessor systems become cheaper, the need to take advantage of multithreading in order to achieve full hardware resource utilization only increases the importance of being able to incorporate concurrency in a wide variety of application categories. For many developers, concurrency remains a mystery. Developing, testing, and debugging multithreaded programs is extremely difficult because concurrency hazards do not manifest themselves uniformly or reliably. This book is intended to be neither an introduction to concurrency (any threading chapter in an "intro" book does that) nor is it an encyclopedic reference of All Things Concurrency (that would be Doug Lea's Concurrent Programming in Java). Instead, this title is a combination of concepts, guidelines, and examples intended to assist developers in the difficult process of understanding concurrency and its new tools in J2SE 5.0. Filled with contributions from Java gurus such as Josh Bloch, David Holmes, and Doug Lea, this book provides any Java programmers with the basic building blocks they need to gain a basic understanding of concurrency and its benefits.

Listings
Preface
Introduction
A (very) brief history of concurrency
Benefits of threads
Risks of threads
Threads are everywhere
Fundamentals
Thread Safety
What is thread safety?
Atomicity
Locking
Guarding state with locks
Liveness and performance
Sharing Objects
Visibility
Publication and escape
Thread confinement
Immutability
Safe publication
Composing Objects
Designing a thread-safe class
Instance confinement
Delegating thread safety
Adding functionality to existing thread-safe classes
Documenting synchronization policies
Building Blocks
Synchronized collections
Concurrent collections
Blocking queues and the producer-consumer pattern
Blocking and interruptible methods
Synchronizers
Building an efficient, scalable result cache
Structuring Concurrent Applications
Task Execution
Executing tasks in threads
The Executor framework
Finding exploitable parallelism
Cancellation and Shutdown
Task cancellation
Stopping a thread-based service
Handling abnormal thread termination
JVM shutdown
Applying Thread Pools
Implicit couplings between tasks and execution policies
Sizing thread pools
Configuring ThreadPoolExecutor
Extending ThreadPoolExecutor
Parallelizing recursive algorithms
GUI Applications
Why are GUIs single-threaded?
Short-running GUI tasks
Long-running GUI tasks
Shared data models
Other forms of single-threaded subsystems
Liveness, Performance, and Testing
Avoiding Liveness Hazards
Deadlock
Avoiding and diagnosing deadlocks
Other liveness hazards
Performance and Scalability
Thinking about performance
Amdahl's law
Costs introduced by threads
Reducing lock contention
Example: Comparing Map performance
Reducing context switch overhead
Testing Concurrent Programs
Testing for correctness
Testing for performance
Avoiding performance testing pitfalls
Complementary testing approaches
Advanced Topics
Explicit Locks
Lock and ReentrantLock
Performance considerations
Fairness
Choosing between synchronized and ReentrantLock
Read-write locks
Building Custom Synchronizers
Managing state dependence
Using condition queues
Explicit condition objects
Anatomy of a synchronizer
AbstractQueuedSynchronizer
AQS in java.util.concurrent synchronizer classes
Atomic Variables and Nonblocking Synchronization
Disadvantages of locking
Hardware support for concurrency
Atomic variable classes
Nonblocking algorithms
The Java Memory Model
What is a memory model, and why would I want one?
Publication
Initialization safety
Annotations for Concurrency
Class annotations
Field and method annotations
Bibliography
Index

×
Free shipping on orders over $35*

*A minimum purchase of $35 is required. Shipping is provided via FedEx SmartPost® and FedEx Express Saver®. Average delivery time is 1 – 5 business days, but is not guaranteed in that timeframe. Also allow 1 - 2 days for processing. Free shipping is eligible only in the continental United States and excludes Hawaii, Alaska and Puerto Rico. FedEx service marks used by permission."Marketplace" orders are not eligible for free or discounted shipping.

Learn more about the TextbookRush Marketplace.

×