https://github.com/pferreirafabricio/csharp-parallel-concurrency
⚡ A comprehensive study of asynchronous, concurrent, and parallel programming concepts in C#
https://github.com/pferreirafabricio/csharp-parallel-concurrency
async async-await asynchronous asynchronous-programming cancellationtoken concurrency csharp dotnet parallel
Last synced: 2 months ago
JSON representation
⚡ A comprehensive study of asynchronous, concurrent, and parallel programming concepts in C#
- Host: GitHub
- URL: https://github.com/pferreirafabricio/csharp-parallel-concurrency
- Owner: pferreirafabricio
- License: mit
- Created: 2024-04-04T13:59:33.000Z (about 1 year ago)
- Default Branch: main
- Last Pushed: 2024-04-17T20:53:50.000Z (about 1 year ago)
- Last Synced: 2025-02-24T06:11:33.651Z (3 months ago)
- Topics: async, async-await, asynchronous, asynchronous-programming, cancellationtoken, concurrency, csharp, dotnet, parallel
- Language: C#
- Homepage:
- Size: 33.2 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
![]()
C# - Async, concurrent, and parallelism concepts
⚡ This project is a comprehensive study of asynchronous, concurrent, and parallel programming concepts in C#.
![]()
## :open_book: About
This project provides a deep dive into the inner workings of async/await and the magic of the C# compiler. The project includes practical examples and case studies, such as a web server with 2 CPUs, to illustrate these concepts in real-world scenarios.
The project also explores the differences between concurrent and parallel programming, and how to make your applications more responsive and faster with asynchronous programming. It provides insights into advanced async topics like progress reports, task cancellation, and more.
> [!NOTE]
> This project is a resource to help me understand the concepts of async, concurrent, and parallelism and their use in practical applications.## ✍️ Docs
- [concepts.en-US.md](docs/concepts.en-US.md)
## :bricks: This project was built with
- [.NET 8](https://learn.microsoft.com/en-us/dotnet/core/whats-new/dotnet-8/overview)
## 📚 References
> [!NOTE]
> I put this in an order that I consider will be more beneficial to watch to understand these concepts### English
- [C# Async / Await - Make your app more responsive and faster with asynchronous programming](https://www.youtube.com/watch?v=2moh18sh5p4)
- [C# Async Programming - Part 1: Conceptual Background](https://www.youtube.com/watch?v=FIZVKteEFyk)
- [Is it concurrent or parallel?](https://www.youtube.com/watch?v=r2__Rw8vu1M)
- [C# Advanced Async - Getting progress reports, cancelling tasks, and more](https://www.youtube.com/watch?v=ZTKGRJy5P2M)
- [How Do You Cancel an async Method? | Step-by-Step Tutorial](https://www.youtube.com/watch?v=PQORTKShZFw)
- [Writing async/await from scratch in C# with Stephen Toub](https://www.youtube.com/watch?v=R-z2Hv-7nxk)
- [AsyncGuidance - David Fowler](https://github.com/davidfowl/AspNetCoreDiagnosticScenarios/blob/master/AsyncGuidance.md)### Portuguese
- [Por debaixo do capô: async/await e as mágicas do compilador csharp](https://dev.to/angelobelchior/por-debaixo-do-capo-asyncawait-e-as-magicas-do-compilador-csharp-28ol)
- [Async/Await: Task.ConfigureAwait, Deadlock e Pink Floyd](https://dev.to/angelobelchior/taskconfigureawait-deadlock-e-pink-floyd-416g)
- [Async/Await: Task.Result e a morte dos Pandas de Madagascar](https://dev.to/angelobelchior/por-debaixo-do-capo-taskresult-e-a-morte-dos-pandas-de-madagascar-5071)
- [Async/Await: Para que serve o CancellationToken?](https://dev.to/angelobelchior/asyncawait-para-que-serve-o-cancellationtoken-nm7)