Sobes.tech
Junior — Middle

Kedy by ste mali použiť metódu s návratovým typom void a kedy Task bez parametrov v asynchrónnych operáciách?

sobes.tech AI

Odpoveď od AI

Metóda s návratovým typom void sa používa pre synchronné operácie, ktoré nič nevracajú.

V asynchrónnom programovaní v C#:

  • Používajte async void iba pre obsluhovače udalostí, kde je metóda volaná systémom a nečaká sa výsledok.
  • Pre asynchrónne metódy, ktoré nevracajú hodnotu, používajte Task (bez parametrov). To umožňuje volať metódu s await a spracovávať výnimky.

Príklad:

// Správne pre asynchrónnu metódu bez výsledku
public async Task SaveDataAsync()
{
    await SomeIOOperationAsync();
}

// Používa sa iba pre udalosti
public async void Button_Click(object sender, EventArgs e)
{
    await SaveDataAsync();
}

Preto je Task bez parametrov určené pre asynchrónne operácie bez výsledku, void pre synchronné metódy alebo asynchrónne obsluhovače udalostí.