Junior — Middle
Jak określić moment, kiedy konieczne jest zaimplementowanie metody jako asynchronicznej?
sobes.tech AI
Odpowiedź od AI
Metoda powinna być zaimplementowana jako asynchroniczna, jeśli wykonuje operacje, które mogą zająć znaczną ilość czasu i zablokować główny wątek, na przykład:
- Wejście/wyjście (czytanie/zapisywanie plików, zapytania do bazy danych, zapytania sieciowe)
- Długie obliczenia, które można równoległe
Asynchroniczność pozwala nie blokować interfejsu użytkownika lub głównego wątku, poprawiając responsywność aplikacji. W C# używa się słów kluczowych async i await.
Przykład:
public async Task<string> GetDataAsync()
{
using HttpClient client = new HttpClient();
string result = await client.GetStringAsync("https://example.com/data");
return result;
}