Описание тега asynchronous
Асинхронное программирование - это стратегия откладывания операций с высокой задержкой или низким приоритетом, обычно в попытке улучшить производительность, скорость отклика и / или компонуемость программного обеспечения. Такие стратегии обычно используются с использованием некоторой комбинации программирования, управляемого событиями, и обратных вызовов, а также, возможно, с использованием параллелизма через сопрограммы и / или потоки.
Асинхронное программирование используется во многих ситуациях:
- обработка пользовательского ввода в UI и играх,
- обработка сетевого трафика,
- выполнение дискового ввода-вывода,
- дозировочная работа,
- и более.
Модели асинхронного программирования могут помочь в составлении программного обеспечения на многих языках (особенно на языках, где функции являются первоклассными типами), а API-интерфейсы обеспечивают обмен сообщениями о завершении на основе обратного вызова. Правильное использование этой методологии программирования может повысить пропускную способность и скорость отклика за счет сокращения общей задержки пакетов заданий при параллельном выполнении. Этот подход также может привести к увеличению пропускной способности системы за счет увеличения времени задержки в работе из-за отложенной обработки.