Junior — Middle
Hoe bepaalt het programma het punt waarop de uitvoering wordt hervat na een pauze of fout?
sobes.tech AI
Antwoord van AI
In C# wordt het hervatpunt na een pauze of foutafhandeling bepaald door het oproepstapelmechanisme en de stroomcontrole-instructies. Bijvoorbeeld, bij gebruik van try-catch, gaat het programma bij een uitzondering naar de catch-blok, waar de fout kan worden afgehandeld, en vervolgens wordt de uitvoering voortgezet.
In asynchrone programmering met async/await genereert de compiler een toestandsmachine die het huidige uitvoeringspunt opslaat. Na het voltooien van de asynchrone operatie wordt de uitvoering hervat vanaf de plek waar deze was onderbroken.
Voorbeeld met async/await:
async Task ExampleAsync()
{
Console.WriteLine("Begin");
await Task.Delay(1000); // Pauze
Console.WriteLine("Vervolg na pauze");
}
Hier wordt na await de uitvoering onderbroken en hervat vanaf het punt na await.