Skip to content

Як працюють Async і Await у C#

1 Звезда2 Звезды3 Звезды4 Звезды5 Звезд (1 оценок, среднее: 5,00 из 5)
Завантаження...

[ Полезный рекламный блок ]

Попробуйте свои силы в игре, где ваши навыки программирования на C# станут решающим фактором. Переходите по ссылке 🔰.


Async і Await – це ключові слова в C#, які дають змогу писати асинхронний код легше та читабельніше. Вони використовуються в контексті роботи з асинхронними методами і завданнями для забезпечення чуйності та ефективного використання ресурсів.

Як працює Async

Це ключове слово використовується перед оголошенням методу, щоб вказати, що цей метод містить асинхронну логіку. Метод, позначений як async, може містити операції, які можуть бути асинхронно очікуваними.

Як працює Await

Це ключове слово використовується всередині методу, позначеного як async, для очікування завершення асинхронних операцій. Коли ви використовуєте await, виконання методу призупиняється доти, доки операція, передана в await, не завершиться.

У цьому прикладі метод FetchDataAsync асинхронно завантажує вміст веб-сторінки за заданим URL. Вираз await client.GetStringAsync() змушує метод очікувати завершення асинхронної операції завантаження даних.

Коли код доходить до оператора await, управління повертається викликаючому коду, і потік, на якому виконується метод, звільняється для виконання іншої роботи. Коли операція завершиться, метод продовжить виконання з отриманим результатом.

Важливо зазначити, що методи, позначені як async, повертають Task або Task<T>, що дає змогу коду, що керує, асинхронно чекати їхнього завершення.

Приклад асинхронного методу в C#

Метод PerformAsyncCalculation оголошено як асинхронний із значенням типу Task<int>, що повертається. Він імітує виконання обчислень за допомогою затримки у 2 секунди з використанням Task.Delay.

У методі Main ми викликаємо метод PerformAsyncCalculation з використанням оператора await і отримуємо результат асинхронних обчислень.

Асинхронний код може бути корисним, коли вам потрібно виконувати завдання, які можуть зайняти багато часу (наприклад, завантаження даних із сервера або обчислення) тощо.

Я сподіваюся, що вам сподобалося читати цю статтю, і вона виявилася легкою для розуміння. Будь ласка, дайте мені знати, якщо у вас є якісь коментарі або виправлення.

Ви хочете навчитися писати код мовою програмування C#?

Створювати різні інформаційні системи, що складаються з сайтів, мобільних клієнтів, десктопних додатків, телеграм-ботів тощо.

Переходьте до нас на сторінку Dijix і ознайомтеся з умовами навчання, ми спеціалізуємося тільки на індивідуальних заняттях, як для початківців, так і для просунутих програмістів. Ви можете взяти як одне заняття для опрацювання питання, що вас цікавить, так і кілька, для більш щільної роботи. Завдяки особистому кабінету, кожен студент підвищить якість свого навчання, у вашому розпорядженні:

  • Доступ до пройденого матеріалу
  • Тематичні статті
  • Бібліотека книг
  • Онлайн тестування
  • Спілкування в закритих групах

https://dijix.com.ua

Живи у своєму світі, програмуй у нашому.

Published inВідповіді на запитання C#
Subscribe
Notify of
guest
0 комментариев
Inline Feedbacks
View all comments
0
Would love your thoughts, please comment.x
()
x