Русская Википедия:Асинхронное программирование
Асинхронное программирование — концепция программирования, которая заключается в том, что результат выполнения функции доступен не сразу, а через некоторое время в виде некоторого асинхронного (нарушающего обычный порядок выполнения) вызова.
В отличие от синхронного программирования, где компьютер выполняет инструкции последовательно и ожидает завершения системных операций (обращение к устройствам ввода-вывода, жесткому диску, сетевой запрос) блокируя следующие операции в потоке выполнения, в асинхронном программировании длительные операции запускаются без ожидания их завершения и не блокируя дальнейшее выполнение программы[1][2].
Использование кода асинхронного программирования позволяет освободить поток выполнения, из которого он был запущен, что приводит к экономии ресурсов[2], а также предоставляет возможность параллельных вычислений. Асинхронное программирование используется для оптимизации высоконагруженных приложений с частым ожиданием системы[1]. Пользователям программ с графическим интерфейсом пользователя асинхронное программирование обеспечивает быстрый отклик[3]. Серверным приложениям асинхронное программирование предоставляет больше возможностей для масштабируемости, по сравнению с синхронным[3].
Модели асинхронного программирования существуют во многих современных языках программирования, таких как C#[4][5][3], JavaScript[6], ASP.NET[7][8], Python[9][10][11] и других.
Примечания
Библиография
- Арыков С. Б., Малышкин В. Э. Алгоритмы конструирования асинхронных программ заданной степени непроцедурности методом группировки // Вестн. Новосиб. гос. ун-та. Серия: Информационные технологии. — 2009. — Т. 7, вып. 1. — С. 3-15.
- Богатырев Р. Об автоматном и асинхронном программировании //Открытые системы. СУБД. — 2001. — №. 3. — С. 68-69.
- Шаблон:Статья
- Арыков С. Б. Асинхронное программирование численных задач //Параллельные вычислительные технологии (ПаВТ’2010): труды международной научной конференции (Уфа, 29 марта-2 апреля 2010 г.). Челябинск: Издательский центр ЮУрГУ. — 2010. — С. 28-39.
- Шаблон:Статья
- Шаблон:Статья
- Шаблон:Статья
- Шаблон:Статья
- ↑ 1,0 1,1 Шаблон:Статья
- ↑ 2,0 2,1 Шаблон:Книга
- ↑ 3,0 3,1 3,2 Шаблон:Книга
- ↑ Шаблон:Статья
- ↑ Дэвис А. Асинхронное программирование в C# 5.0 //М.: ДМК Пресс. — 2013.
- ↑ Шаблон:Статья
- ↑ Шаблон:Cite web
- ↑ Шаблон:Статья
- ↑ Шаблон:Статья
- ↑ Шаблон:Статья
- ↑ Толстикова А. В., Мирошниченко И. С., Коцюр А. Б. Эффективность использования программирования асинхронных приложений на языке Python //Проблемі інформатизації та управління. — 2016. — Т. 1. — №. 53. — С. 72-77.