کارکرد متد مهم ConfigureAwait
ConfigureAwait(true):
پس از اتمام wait ادامه کار توسط همان Thread اولیه انجام میشود. اگر Thread در اختیار درخواست دیگری باشد، تا اتمام آن باید صبر مضاعف کرد! امکان بروز Deadlock وجود دارد. در عوض Thread synchronization context از دست نمیرود. زمانی که متد Async در یک متد غیر Async فراخوانی گردد نیز امکان Deadlock وجود دارد. رفتار پیشفرض .Net Framework همین گونه است!
ConfigureAwait(false):
پس از اتمام wait ادامه کار توسط یک Thread آزاد انجام میشود. که لزوما همان اولیه نیست، پس صبر اضافی لازم ندارد. از بروز Deadlock مربوط به این رفتار جلوگیری میشود. رفتار پیشفرض .Net Core این گونه است.
استفاده از AI برای SQL نویسی
Architecture with .NET Core 3.1, ASP.NET Core 3.1, Entity Framework Core 3.1, C#, Angular 9.1, Clean Code, SOLID, DDD, Code Analysis, Docker and more.
Technologies
- .NET Core 3.1
- ASP.NET Core 3.1
- Entity Framework Core 3.1
- C# 8.0
- Angular 9.1
- Typescript
- JWT
- FluentValidation
- Scrutor
- Serilog
- Docker
- Azure DevOps
- ...
Practices
- Clean Code
- SOLID Principles
- DDD (Domain-Driven Design)
- Unit of Work Pattern
- Repository Pattern
- ...