Słowa kluczowe: async, await, task w C# i ASP.NET MVC

Wyjaśnienie pojęć: async, await i task.


Async - tym słowem kluczowym oznaczamy metodę asynchroniczną. Dzięki temu kompilator wie, że będzie to metoda asynchroniczna i tworzy. Metoda Asynchroniczna według konwencji powinna mieć na końcu nazwy słowo Async.

Task - jest to typ danych zwracanych przez metodę asynchroniczną. Typ Task<typ_zwracany> informuje kompilator o danych zwracanych asynchronicznie.

Await - informuje o metodzie, która czeka na dane zwracane w sposób asynchroniczny, słowo await może być użyte tylko w metodzie asynchronicznej oznaczonej słowem async. Dzięki słowu await kompilator nie blokuje wątku i wykonania innych części kodu na czas pobierania danych, gdy dane z metody oznaczonej await zostaną pobrane wykonywane są kolejne operacje, które czekały na te dane, pozostałe operacje były wykonywane równocześnie z pobieraniem danych. Przykładem może być wyświetlenie i załadowanie danych do formularza. Gdy metoda jest synchroniczna dane są ładowane a dopiero później uruchamiane okno z formularzem, gdy metoda jest asynchroniczna okno zostaje załadowane i jest responsywne (można np. zmieniać wielkość okna), podczas gdy w tle są pobierane dane, gdy pobieranie danych się zakończy zostanie wykonana pozostała część kodu odpowiedzialna za wyświetlenie danych w formularzu.

Więcej informacji o metodach asynchronicznych:

http://www.asp.net/mvc/tutorials/mvc-4/using-asynchronous-methods-in-aspnet-mvc-4
Komentarze facebook (polub nasz profil na FB aby je zobaczyć):