Асинхронное программирование является стратегией задержки операций с высокой задержкой или низким приоритетом, обычно в попытке улучшить производительность, скорость отклика, и / или composability программного обеспечения. Такие стратегии обычно используются с помощью некоторой комбинации событийно-ориентированного программирования и обратных вызовов и дополнительно использования параллелизма через сопрограммы и / или потоки.

Асинхронное программирование является стратегией задержки операций с высокой задержкой или низким приоритетом, обычно в попытке улучшить производительность, скорость отклика, и / или composability программного обеспечения. Такие стратегии обычно используются с помощью некоторой комбинации событийно-ориентированного программирования и обратных вызовов и дополнительно использования параллелизма через сопрограммы и / или потоки.

Асинхронное программирование используется во многих ситуациях:

  • обработка ввода данных пользователем в UIs и играх,
  • обработка сетевого трафика,
  • выполнение диска ввод-вывод,
  • пакетная обработка работы,
  • и т.д.

Модели асинхронного программирования могут помочь в составе программного обеспечения на многих языках (особенно языки, где функции являются первоклассными типами), и API, обеспечивающие основанный на обратном вызове обмен сообщениями завершения. Надлежащее использование этой методологии программирования может улучшить пропускную способность и улучшить скорость отклика путем сокращения общей задержки пакетов задания при выполнении параллельно. Этот подход может также привести к увеличению системной пропускной способности за счет увеличенной операционной задержки, следующей из задержанной обработки.