Company: Packt Publishing Author: Tatiana Fesenko Full Title: Java Concurrency And Multithreading In Practice Year: 2019 Language: English Genre: Educational: Application development Skill Level: - Price: €124.99 - Files: MP4 (+ Exercise Files) Time: 02:20:55 Video: AVC, 1920 x 1080 (1.778) at 30.000 fps, 250 kbps Audio: AAC at 160 Kbps, 2 channels, 48.0 KHz Improve the performance of your application by using modern Java's multithreading features. Multi-core processors are everywhere—from super-computers to mobile devices right in your pocket. That's why a modern developer must know how to leverage the power of multithreading. This course will teach you how to use parallelism and concurrency in Java. You will learn how to parallelize tasks and functions with the ForkJoin framework and Streams. You will also learn how to work with the very popular Reactive Streams recently introduced to Java. Furthermore, you will master concurrent collections and lower-level synchronization techniques with locks. This course conveniently provides quizzes to evaluate your knowledge and help you retain the new concepts. By the end of this practical training course, you will have the knowledge to write elegant programs for multicore computers with enhanced performance and improved responsiveness. Learn: ✓ Build efficient and elegant code with popular parallel Java frameworks, including ForkJoin and Streams ✓ Master Reactive Streams to process data ✓ Explore the existing thread-safe collections and types, to avoid reinventing the wheel ✓ Understand how threads work in Java and how to manage them ✓ Leverage multithreading to increase your application's performance Features: ✓ Increase the performance and responsiveness of your application with multithreading ✓ Hands-on examples demonstrating how to write concurrent and parallel programs, and quizzes to help you to retain your knowledge ✓ Coverage of the latest concurrency enhancements in Java Lessons: 1. Running Tasks in Parallel 01. The Course Overview 02. Executing Tasks in Parallel with ForkJoinPool 03. Joining the Results of the Tasks 04. RecursiveAction and RecursiveTask 05. Exception Handling and Cancelling a Task 2. Executing Functions in Parallel with Parallel Streams and Futures 06. Callable and Future 07. Thread and Thread Pool 08. CompletableFuture 09. Sequential Streams 10. Parallel Streams 3. Reactive Streams 11. Overview: Publishers, Subscribers, and Subscriptions 12. Subscriber: Consuming Messages 13. Publisher and SubmissionPublisher: Providing Messages 14. Processor: Transforming Messages 4. Threads and Locks 15. Threads: Thread Lifecycle 16. Structured Locks ("synchronized" Keyword) 17. Working with Locks 18. Object#wait(), notify(), and the New onSpinWait() 19. Possible Problems: Data Races, Deadlock, Livelock, and Resource Starvation 5. Thread-Safe Data Structures 20. Atomic Types and the Compare-and-Set Approach 21. Concurrent Collections: ConcurrentHashMap, ConcurrentLinkedQueue 22. Blocking Queues 23. Copy-on-Write Collections 24. Wrap Up and Next Steps Our members see more. Join us! ------------- Our members see more. Join us!