Async Expert
33h 11m 40s
English
Paid
Course description
Master asynchronous programming in .NET with the Async Expert course. You will experience a deep dive from the basics to advanced techniques, such as async-await, working with concurrent collections, and managing parallelism.
The course includes homework assignments to consolidate knowledge as well as exclusive materials from recognized experts: Marc Gravell, Daniel Marbach, and Stephen Cleary.
Read more about the course
Update: It was decided to also add the course C# 9.0 Professional to the collection.
Watch Online
0:00
/ #1: Course overview
All Course Lessons (86)
| # | Lesson Title | Duration | Access |
|---|---|---|---|
| 1 | Course overview Demo | 05:38 | |
| 2 | BenchmarkDotNet basics | 22:33 | |
| 3 | Demo: sharplab.io | 10:07 | |
| 4 | Demo: ConcurrencyVisualizer | 09:45 | |
| 5 | Demo: Parallel Stacks/Tasks | 08:10 | |
| 6 | Homework | 01:23 | |
| 7 | Threads | 01:42:37 | |
| 8 | ThreadPool | 01:37:50 | |
| 9 | Demo: ThreadPool use with different API | 20:27 | |
| 10 | Demo: ThreadPool.BindHandle usage | 19:36 | |
| 11 | Homework | 01:30 | |
| 12 | Task API | 01:16:11 | |
| 13 | Async-await foundations | 01:55:31 | |
| 14 | Async eliding | 19:59 | |
| 15 | ValueTask | 23:46 | |
| 16 | Task API and async | 27:37 | |
| 17 | Homework | 01:06 | |
| 18 | Execution, contexts, scheduler | 01:30:08 | |
| 19 | Sync vs async | 43:53 | |
| 20 | Fire and forget | 17:56 | |
| 21 | TaskCompletionSource | 24:45 | |
| 22 | Awaitables | 25:36 | |
| 23 | Locals | 37:31 | |
| 24 | Homework | 01:22 | |
| 25 | Tasks aggregations | 45:33 | |
| 26 | IAsyncDiposable | 17:39 | |
| 27 | IAsyncEnumerable | 15:01 | |
| 28 | Demo: gRPC with IAsyncEnumerable | 07:05 | |
| 29 | Demo: New SQL client | 03:34 | |
| 30 | Demo: Timeout with WhenAny and WhenAll | 05:34 | |
| 31 | Homework | 00:46 | |
| 32 | Hardware | 40:02 | |
| 33 | volatile | 15:41 | |
| 34 | Demo: Epoch programming in ConcurrentQueue | 15:09 | |
| 35 | Interlocked | 19:39 | |
| 36 | Demo: simple pool with Interlocked.Exchange | 03:54 | |
| 37 | Barriers and alignment | 09:36 | |
| 38 | Demo: range reservation with Aeron.NET and Interlocked.CompareExchange | 10:48 | |
| 39 | Homework | 01:08 | |
| 40 | Exclusive locking - part 1 | 24:13 | |
| 41 | Demo: decompiling lock | 06:17 | |
| 42 | Exclusive locking - part 2 | 09:57 | |
| 43 | Demo: non-blocking usage of Monitor.TryEnter | 07:35 | |
| 44 | Exclusive locking - part 03 | 08:21 | |
| 45 | Non-exclusive locking - part 1 | 11:07 | |
| 46 | Demo: task throttling with Task and SemaphoreSlim | 08:03 | |
| 47 | Non-exclusive locking - part 2 | 07:38 | |
| 48 | Demo: Building custom string pool with ReaderWriterLock | 12:10 | |
| 49 | Non-exclusive locking - part 3 | 06:09 | |
| 50 | Signalling | 13:20 | |
| 51 | Asynchronous primitives - part 1 | 05:51 | |
| 52 | Demo: AsyncLock implementation | 21:33 | |
| 53 | Asynchronous primitives - part 2 | 15:58 | |
| 54 | Homework | 01:10 | |
| 55 | Foundations | 20:52 | |
| 56 | BlockingCollection | 11:56 | |
| 57 | ConcurrentStack | 16:43 | |
| 58 | Demo: object cache with ConcurrentStack | 04:11 | |
| 59 | ConcurrentQueue | 22:24 | |
| 60 | Demo: memory pool in Kestrel ASP.NET with ConcurrentQueue | 07:39 | |
| 61 | ConcurrentDictionary | 17:08 | |
| 62 | Demo: efficient caching with ConcurrentDictionary.GetOrAdd | 04:01 | |
| 63 | ConcurrentBag | 06:18 | |
| 64 | Homework | 00:47 | |
| 65 | Introduction | 16:29 | |
| 66 | Pipelines | 26:22 | |
| 67 | Demo: TcpEcho | 18:29 | |
| 68 | Channels | 19:56 | |
| 69 | Demo: Usage of the Channel<T> in ASP.NET Core | 07:21 | |
| 70 | Homework | 01:03 | |
| 71 | IValueTaskSource with Interlocked.CompareExchange | 19:13 | |
| 72 | IValueTaskSource based on an array with token discriminator | 11:01 | |
| 73 | ValueTask and pooling in .NET 5 | 11:26 | |
| 74 | ManualResetValueTaskSourceCore | 11:33 | |
| 75 | False Sharing | 09:56 | |
| 76 | Demo: Hosted services with IHostBuilder, IHostedService and ConcurrentQueue | 13:19 | |
| 77 | F# async vs C# async | 29:14 | |
| 78 | What's new in CancellationTokens for .NET 5 and beyond | 13:11 | |
| 79 | Summary of the course | 14:03 | |
| 80 | Marc Gravell, webinar nr 1 | 01:25:05 | |
| 81 | Daniel Marbach, webinar nr 2 | 01:01:11 | |
| 82 | Steve Cleary, webinar nr 3 | 01:05:19 | |
| 83 | Daniel Marbach, webinar nr 4 | 01:08:21 | |
| 84 | Marc Gravell, webinar nr 5 | 01:05:40 | |
| 85 | Steve Cleary, webinar nr 6 | 01:20:20 | |
| 86 | Daniel Marbach, webinar nr 7 | 55:41 |
Unlock unlimited learning
Get instant access to all 85 lessons in this course, plus thousands of other premium courses. One subscription, unlimited knowledge.
Learn more about subscriptionBooks
Read Book Async Expert
| # | Title |
|---|---|
| 1 | M01L01Overview |
| 2 | M01L02BenchmarkDotNet |
| 3 | M01L03Sharplab |
| 4 | M01L04ConcurrencyVisualizer |
| 5 | M01L06Homework |
| 6 | M02L01Introduction |
| 7 | M02L02Threads |
| 8 | M02L03ThreadsPools |
| 9 | M03L01TaskAPI |
| 10 | M03L02AsyncAwaitFoundations |
| 11 | M03L03AsyncEliding |
| 12 | M03L04ValueTask |
| 13 | M03L05TaskAPIandAsync |
| 14 | M03L06Homework |
| 15 | M04L01 |
| 16 | M04L02 |
| 17 | M04L03 |
| 18 | M04L04 |
| 19 | M04L05 |
| 20 | M04L06 |
| 21 | M04L07 |
| 22 | M05L01 |
| 23 | M05L02 |
| 24 | M05L03 |
| 25 | M05L04 |
| 26 | M06L01 |
| 27 | M06L02 |
| 28 | M06L03 |
| 29 | M06L04 |
| 30 | M06L05 |
| 31 | M07L01ExclusiveLocking |
| 32 | M07L02NonexclusiveLocking |
| 33 | M07L03Signalling |
| 34 | M07L04AsyncPrimitives |
| 35 | M07L05Homework |
| 36 | M08L01 |
| 37 | M08L02 |
| 38 | M08L03 |
| 39 | M08L04 |
| 40 | M09L04 |
| 41 | M09L03 |
| 42 | M09L02 |
| 43 | M09L01 |
| 44 | M10L01 |
| 45 | M10L02 |
| 46 | M10L03 |
| 47 | M10L04 |
| 48 | M10L05 |
| 49 | M10L07 |
| 50 | M10L08 |
Comments
0 commentsWant to join the conversation?
Sign in to commentSimilar courses
C# Mastercourse
Sources: iamtimcorey.com (Tim Corey)
C# is the coding language used to build applications across the web, mobile, desktop, and games. The world runs on applications. When you learn C#, you learn a skill the world ...
70 hours 40 minutes 18 seconds
C# Basics for Beginners: Learn C# Fundamentals by Coding
Sources: udemy
With over 50,000 happy students and 15,000+ positive reviews, this course is Udemy's most popular course for learning C# from scratch! C# is a beautiful cross-platform language...
5 hours 14 minutes 5 seconds