Junior — Middle
Milyen eredményt ad vissza egy aszinkron hívás egy módszerhez?
sobes.tech MI
Válasz az MI-től
A C#-ban egy metódus aszinkron hívása általában Task vagy Task<T> típusú objektumot ad vissza. Ez az objektum egy ígéretet (promise) képvisel arra, hogy a művelet a jövőben befejeződik.
- Ha a metódus nem ad vissza eredményt, akkor
Task-t ad vissza. - Ha a metódus
Ttípusú eredményt ad vissza, akkorTask<T>-t ad vissza, amely a befejezéskor tartalmazza az eredményt.
Példa:
async Task<int> GetDataAsync()
{
await Task.Delay(1000); // aszinkron művelet szimulálása
return 42;
}
A GetDataAsync() hívás azonnal visszaad egy Task<int>-t, és az eredményt await vagy a Result tulajdonság segítségével lehet elérni (az utóbbi blokkolja a szálat).