Junior — Middle
Leg het principe uit van de werking van asynchroniteit in coroutines en hoe het is geïmplementeerd
sobes.tech AI
Antwoord van AI
Asynchroniciteit in coroutines in C# wordt geïmplementeerd via de sleutelwoorden async en await, die het mogelijk maken om asynchrone code te schrijven die lijkt op synchrone code, zonder threads te blokkeren.
Werking principe:
- Een methode gemarkeerd als
asynckan de operatorawaitbevatten, die de uitvoering van de methode onderbreekt totdat de asynchrone operatie is voltooid. - Tijdens deze tijd wordt de huidige thread niet geblokkeerd, maar wordt de controle teruggegeven aan de aanroepende code.
- Na voltooiing van de operatie gaat de uitvoering van de methode verder vanaf de
await.
Voorbeeld:
public async Task<string> GetDataAsync()
{
// Wacht asynchroon op de voltooiing van de operatie
string result = await SomeLongRunningOperationAsync();
return result;
}
Op deze manier maken coroutines efficiënt gebruik van bronnen, zonder threads te blokkeren tijdens het wachten.