My Account Log in

3 options

Java 9 concurrency cookbook : master the art of fast, effective Java development with the power of concurrent and parallel programming / Javier Fernandez Gonzalez.

EBSCOhost Academic eBook Collection (North America) Available online

View online

Ebook Central College Complete Available online

View online

O'Reilly Online Learning: Academic/Public Library Edition Available online

View online
Format:
Book
Author/Creator:
Fernández González, Javier, author.
Language:
English
Physical Description:
1recurs en línia: (582 pàgines) : illustracions
Edition:
Second edition.
Other Title:
Java nine concurrency cookbook
Place of Publication:
Birmingham, England ; Mumbai, [India] : Packt, 2017.
System Details:
text file
Biography/History:
Gonzalez Javier Fernandez: Javier Fernandez is a software architect with almost 15 years experience with Java technologies. He has worked as a teacher, researcher, programmer, analyst, writer and now as an architect in all types of projects related to Java, especially J2EE. As a teacher, has taught over 1000 hours of training in basic Java, J2EE and Struts framework. As a researcher, has worked in the field of information retrieval developing applications for processing large amounts of data in Java and has participated as co-author on several journal articles and conference presentations. In recent years, has worked on developing J2EE web applications for various clients from different sectors (public administration, insurance, healthcare, transportation, .. .). Currently he works as a software architect at Capgemini developing and maintaining applications for an insurance company. He is the author of the book Java 7 Concurrency Cookbook.
Summary:
Master the art of fast, effective Java development with the power of concurrent and parallel programming About This Book Get detailed coverage of important recipes on multi-threading and parallel programming This book takes a close look at the Java 9 APIs and their impact on concurrency See practical examples on thread safety, high-performance classes, safe sharing, and a whole lot more Who This Book Is For The book is for Java developers and programmers at an intermediate to advanced level. It will be especially useful for developers who want to take advantage of task-based recipes using Java 9's concurrent API to program thread-safe solutions. What You Will Learn Find out to manage the basic components of the Java Concurrency API Use synchronization mechanisms to avoid data race conditions and other problems of concurrent applications Separate the thread management from the rest of the application with the Executor framework Solve problems using a parallelized version of the divide and conquer paradigm with the Fork / Join framework Process massive data sets in an optimized way using streams and reactive streams See which data structures we can use in concurrent applications and how to use them Practice efficient techniques to test concurrent applications Get to know tips and tricks to design concurrent applications In Detail Writing concurrent and parallel programming applications is an integral skill for any Java programmer. Java 9 comes with a host of fantastic features, including significant performance improvements and new APIs. This book will take you through all the new APIs, showing you how to build parallel and multi-threaded applications. The book covers all the elements of the Java Concurrency API, with essential recipes that will help you take advantage of the exciting new capabilities. You will learn how to use parallel and reactive streams to process massive data sets. Next, you will move on to create streams and use all their intermediate and terminal operations to process big collections of data in a parallel and functional way. Further, you'll discover a whole range of recipes for almost everything, such as thread management, synchronization, executors, parallel and reactive streams, and many more. At the end of the book, you will learn how to obtain information about the status of some of the most useful components of the Java Concurrency API and how to test concurrent applications using different tools. Style and approach ...
Contents:
Cover
Copyright
Credits
About the Author
About the Reviewer
www.PacktPub.com
Customer Feedback
Table of Contents
Preface
Chapter 1: Thread Management
Introduction
Creating, running, and setting the characteristics of a thread
Getting ready
How to do it...
How it works...
There's more...
See also
Interrupting a thread
Controlling the interruption of a thread
Sleeping and resuming a thread
Waiting for the finalization of a thread
Creating and running a daemon thread
Processing uncontrolled exceptions in a thread
Using thread local variables
Grouping threads and processing uncontrolled exceptions in a group of threads
Creating threads through a factory
Chapter 2: Basic Thread Synchronization
Synchronizing a method
Using conditions in synchronized code
Synchronizing a block of code with a lock
Avoiding deadlocks
See also.
Synchronizing data access with read/write locks
Getting ready...
Using multiple conditions in a lock
Advanced locking with the StampedLock class
Chapter 3: Thread Synchronization Utilities
Controlling concurrent access to one or more copies of a resource
Fairness in semaphores
Waiting for multiple concurrent events
Synchronizing tasks in a common point
Resetting a CyclicBarrier object
Broken CyclicBarrier objects
Running concurrent-phased tasks
Registering participants in Phaser
Forcing the termination of Phaser
Controlling phase change in concurrent-phased tasks
Exchanging data between concurrent tasks
Completing and linking tasks asynchronously
See also...
Chapter 4: Thread Executors
Creating a thread executor and controlling its rejected tasks
Executing tasks in an executor that returns a result
Running multiple tasks and processing the first result
Running multiple tasks and processing all the results
Running a task in an executor after a delay
Running a task in an executor periodically
Canceling a task in an executor
Controlling a task finishing in an executor
Separating the launching of tasks and the processing of their results in an executor
Chapter 5: Fork/Join Framework
Creating a fork/join pool
Joining the results of the tasks
Running tasks asynchronously
Throwing exceptions in the tasks
Canceling a task
Chapter 6: Parallel and Reactive Streams
Creating streams from different sources
Reducing the elements of a stream
Collecting the elements of a stream
Applying an action to every element of a stream
Filtering the elements of a stream
Transforming the elements of a stream
Sorting the elements of a stream
Verifying conditions in the elements of a stream
Reactive programming with reactive streams
Chapter 7: Concurrent Collections
Using non-blocking thread-safe deques
Using blocking thread-safe deques
Using blocking thread-safe queue ordered by priority
Using thread-safe lists with delayed elements
Using thread-safe navigable maps
Using thread-safe HashMaps
Using atomic variables
Using atomic arrays
How to do it.
How it works...
Using the volatile keyword
Using variable handles
Chapter 8: Customizing Concurrency Classes
Customizing the ThreadPoolExecutor class
Implementing a priority-based Executor class
Implementing the ThreadFactory interface to generate custom threads
Using our ThreadFactory in an Executor object
Customizing tasks running in a scheduled thread pool
Implementing the ThreadFactory interface to generate custom threads for the fork/join framework
Customizing tasks running in the fork/join framework
Implementing a custom Lock class
Implementing a transfer queue-based on priorities
Implementing your own atomic object
Implementing your own stream generator
Implementing your own asynchronous stream
Chapter 9: Testing Concurrent Applications.
Notes:
Includes index.
Description based on online resource; title from PDF title page (ebrary, viewed May 12, 2017).
ISBN:
9781787125438
1787125432
OCLC:
987006610

The Penn Libraries is committed to describing library materials using current, accurate, and responsible language. If you discover outdated or inaccurate language, please fill out this feedback form to report it and suggest alternative language.

Find

Home Release notes

My Account

Shelf Request an item Bookmarks Fines and fees Settings

Guides

Using the Find catalog Using Articles+ Using your account