Junior — Middle
Ποιο αποτέλεσμα επιστρέφει μια ασύγχρονη κλήση σε μια μέθοδο;
sobes.tech AI
Απάντηση από AI
Η ασύγχρονη κλήση μιας μεθόδου σε C# γενικά επιστρέφει ένα αντικείμενο τύπου Task ή Task<T>. Αυτό το αντικείμενο αντιπροσωπεύει μια υπόσχεση (promise) ολοκλήρωσης της λειτουργίας στο μέλλον.
- Αν η μέθοδος δεν επιστρέφει αποτέλεσμα, επιστρέφει
Task. - Αν η μέθοδος επιστρέφει αποτέλεσμα τύπου
T, επιστρέφειTask<T>, το οποίο περιέχει το αποτέλεσμα μόλις ολοκληρωθεί.
Παράδειγμα:
async Task<int> GetDataAsync()
{
await Task.Delay(1000); // προσομοίωση ασύγχρονης λειτουργίας
return 42;
}
Η κλήση GetDataAsync() επιστρέφει άμεσα ένα Task<int>, και το αποτέλεσμα μπορεί να ληφθεί μέσω await ή μέσω της ιδιότητας Result (το τελευταίο μπλοκάρει το νήμα).