Autoplay
Autocomplete
Previous Lesson
Complete and Continue
Extreme Java - Concurrency Performance v5.1
0. Welcome
0. Welcome (4:07)
Exercises and Slides
1. Introduction
1. Introduction (13:20)
1.1. History of Concurrency (5:45)
1.2. Benefits of Threads (10:31)
1.3. Risks of Threads (11:50)
1.4. Threads Are Everywhere (2:31)
1.5. Creating and Starting Threads (4:40)
1.A. Bonus PrintFlagsFinal (22:19)
1.X. Exercise Description (1:55)
1.Z. Exercise Walkthrough (2:17)
2. Thread Safety
2.1. Atomicity (5:33)
2. Thread Safety (7:26)
2.2. Visibility (9:29)
2.3. Confinement (5:44)
2.4. Immutability (8:15)
2.5. Designing a Thread-Safe Class (5:02)
2.X. Exercise Description (4:35)
2.Z. Exercise Walkthrough (14:16)
3. Building Blocks
3. Building Blocks (0:54)
3.1. Synchronized Collections (6:07)
3.2. Concurrent Collections (24:35)
3.3. Blocking Queues (17:33)
3.4. Synchronizers (19:32)
3.X. Exercise Description (3:11)
3.Z. Exercise Walkthrough (17:40)
4. Task Execution
4. Task Execution (3:44)
4.1. The Executor Framework Part 1 (15:55)
4.1. The Executor Framework Part 2 (17:41)
4.2. Finding Exploitable Parallelism (25:16)
4.3. Using Parallel Streams (5:59)
4.X. Exercise Description (0:54)
4.Z. Exercise Walkthrough (21:25)
5. Cancellation
5. Cancellation Part 1 (11:29)
5. Cancellation Part 2 (16:34)
5.X. Exercise Description (1:10)
5.Z. Exercise Walkthrough (5:34)
6. Applying Thread Pools
6.1. Sizing Thread Pools (7:05)
6. Applying Thread Pools (4:09)
6.2. Configuring ThreadPoolExecutor (8:50)
6.X. Exercise Description (2:24)
6.Z. Exercise Walkthrough (5:51)
7. Fork Join
7.1. Fork Join Demos (12:12)
7. Fork Join (25:04)
7.X. Exercise Description (5:36)
7.Z. Exercise Walkthrough (7:19)
8. Avoiding Liveness Hazards
8.1. Deadlock (26:24)
8. Avoiding Liveness Hazards (3:16)
8.2. Avoiding and Diagnosing Deadlocks (11:07)
8.3. Livelock (4:42)
8.X. Exercise Description (2:51)
8.Z. Exercise Walkthrough (27:33)
9. Testing Concurrent Programs
9. Testing Concurrent Programs (8:15)
9.1. Testing for Correctness (27:16)
9.2. Testing for Performance (4:53)
9.X. Exercise Description (2:54)
9.Z. Exercise Walkthrough (15:44)
10. Performance and Scalability
10. Performance and Scalability (2:57)
10.1. Thinking About Performance (15:54)
10.2. Amdahl's and Little's Laws (12:23)
10.3. Costs Introduced by Threads (11:34)
11. Explicit Locks
11.1. Lock and ReentrantLock (22:23)
11. Explicit Locks (1:15)
11.2. Performance Considerations (1:38)
11.3. Synchronized vs ReentrantLock (6:08)
11.4. Read-Write Locks (7:15)
11.5. StampedLock (16:57)
11.X. Exercise Description (8:25)
11.Z.1a. Exercise Walkthrough (9:58)
11.Z.1b. Exercise Walkthrough (18:43)
11.Z.3. Exercise Walkthrough (22:53)
12. Building Custom Synchronizers
12.1. Managing State Dependence (21:26)
12. Building Custom Synchronizers (3:21)
12.2. Using Condition Queues (9:47)
12.3. Explicit Condition Objects (6:32)
12.4. Managed Blocker (21:41)
12.X. Exercise Description (1:29)
12.X. Exercise Walkthrough (16:57)
13. Atomics and Nonblocking Synchronization
13. Atomics and Nonblocking Synchronization (1:41)
13.1. Disadvantages of Locking (26:18)
13.2. Hardware Support for Concurrency Part 2 (10:50)
13.2. Hardware Support for Concurrency Part 1 (17:50)
13.3. Atomic Wrapper Classes (17:57)
13.4. Nonblocking Algorithms (5:39)
13.5. The LMAX Disruptor (19:23)
13.X. Exercise Description (4:24)
13.Z. Exercise Walkthrough 1 and 2 (9:51)
13.Z. Exercise Walkthrough 3 (21:21)
14. Java Memory
14.1. Java Memory (Part 2) (16:18)
14.1. Java Memory (Part 1) (19:38)
14.1. Java Memory (Part 3) (17:15)
14.X. Exercise Description (2:43)
14.Z.1. Exercise Walkthrough (17:12)
14.Z.2. Exercise Walkthrough (10:32)
15. Java Optimizations
15. Java Optimizations (2:56)
15.1. Tuning Process (Part 1) (20:08)
15.1. Tuning Process (Part 2) (7:12)
15.1.X. Exercise Description (3:15)
15.1.Z. Exercise Walkthrough (24:39)
15.2. Typical Problem Areas (Part 1) (11:40)
15.2. Typical Problem Areas (Part 2 - Strings A) (25:39)
15.2. Typical Problem Areas (Part 3 - Strings B) (24:05)
5.2. Typical Problem Areas (Part 4 - Exceptions A) (14:17)
5.2. Typical Problem Areas (Part 4 - Exceptions B) (13:18)
5.2. Typcal Problem Areas (Part 5 - Loops) (25:41)
5.2. Typical Problem Areas (Part 6) (21:29)
15.2.X. Exercise Description (0:42)
15.2.Z. Exercise Walkthrough (24:47)
1.3. Risks of Threads
Lesson content locked
If you're already enrolled,
you'll need to login
.
Enroll in Course to Unlock