Sobes.tech
Junior — Middle

Izskaidrojiet asinhronitātes darbības principu korutīnās un kā tā ir īstenota

sobes.tech AI

Atbilde no AI

Asinhronitāte korutīnās C# valodā tiek īstenota, izmantojot atslēgvārdus async un await, kas ļauj rakstīt asinhrono kodu, kas līdzinās sinhronam, neblokējot pavedienus.

Darba princips:

  • Metode, kas marķēta ar async, var saturēt await operatoru, kas pārtrauc metodes izpildi līdz asinhronas operācijas pabeigšanai.
  • Šajā laikā pašreizējais pavediens netiek bloķēts, un kontrole tiek atgriezta izsaucējam kodam.
  • Pēc operācijas pabeigšanas, metodes izpilde turpinās no await vietas.

Piemērs:

public async Task<string> GetDataAsync()
{
    // Asinhroni gaidām operācijas pabeigšanu
    string result = await SomeLongRunningOperationAsync();
    return result;
}

Tādējādi korutīnas ļauj efektīvi izmantot resursus, neblokējot pavedienus gaidīšanas laikā.