Javascript.RU

Асинхронное программирование

Асинхронное программирование или Event-driven программирование - общее название для стиля программирования, при котором результат работы функции приходит не сразу после вызова, а когда-нибудь потом.

В Javascript такое - сплошь и рядом. На этом построен AJAX и javascript-анимация.

Писать программы, в которых результат вызова функции приходит неизвестно когда - куда сложнее, чем обычные. Вложенные вызовы, обработка ошибок, контроль за происходящим - все усложняется.

Поэтому люди изобрели некоторые полезные методы, облегчающие асинхронную жизнь.

  • Объект Deferred.

    Каждый, кто когда-либо использовал AJAX, знаком с асинхронным программированием. Это когда мы запускаем некий процесс (скажем, XMLHTTPRequest) и задаем функцию callback обработки результата.

    На первый взгляд, все очень просто, но лишь до тех пор, пока мы не захотим добавить вызов новой функции после callback, сделать удобную обработку ошибок и исключений, а также - предусмотреть добавление новых функций в конец цепочки асинхронных вызовов.

    Один способ - добавлять каллбэки в параметры всех функций. Другой - использовать для управления асинхронностью отдельный объект. Назовем его Deferred.

    Такой объект есть, например, в библиотеке Mochikit и во фреймворке dojo. читать дальше »

  • Вложенные асинхронные вызовы. Объект Deferred в деталях.

    Объект Deferred инкапсулирует последовательность обработчиков для еще не существующего результата, чем сильно упрощает сложные AJAX-приложения. Он предоставляется различными фреймворками (Dojo Toolkit, Mochikit) и отдельными библиотечками (jsDeferred, Promises etc).

    С его помощью можно добавлять обработчики не в момент запуска метода (например, посылки запроса XMLHTTPRequest() , а в любой момент после этого. читать дальше »


Автор: Гость (не зарегистрирован), дата: 2 февраля, 2016 - 14:12
#permalink

как всё здорово! правда, ничего не понятно(


Автор: Marina88 (не зарегистрирован), дата: 8 мая, 2019 - 07:24
#permalink

Спасибо, что поделились этой информацией. Я действительно наслаждался этим. Отлично отлично. transformice


Автор: galdy, дата: 24 августа, 2019 - 10:40
#permalink

Useful information. It's help me a lot. Actually Asynchronous programming is a form of parallel programming that allows a unit of work to run separately from the primary application thread. ... Asynchronous programming has actually been around for a long time, but in recent years, it's become more widely used.
Would like to know about the MyBkexperience


Автор: Гость (не зарегистрирован), дата: 26 сентября, 2019 - 10:56
#permalink

Великие посты! Я на самом деле готовлюсь через эту информацию, очень полезен мой друг.super smash flash 2


Автор: geometry dash (не зарегистрирован), дата: 16 октября, 2019 - 10:48
#permalink

Thank you for sharing this useful article information. I am really impressed with the article you provided. geometry dash


Автор: Mark john (не зарегистрирован), дата: 13 декабря, 2019 - 10:51
#permalink

very helpful post kindly share some more posts. i really like it and i have to ask you about hotmail com for adding more information.


Автор: Bailee Lowe (не зарегистрирован), дата: 18 декабря, 2019 - 11:52
#permalink

This strain, however, is not about brute “Force,” as the original Master Yoda would know, and the sativa side of this mostly indica buzz has just enough of an uplifting balance to please just about anyone. The OX has a delightful flavor of coffee and berries, and a high CBD content, making it a good choice for medical users nobullshitseeds


Автор: Dimitri Trodov (не зарегистрирован), дата: 21 декабря, 2019 - 01:53
#permalink

if you are having issue with your hotmail account and having problems while hotmail login you can visit my site and can check my guide on hotmail.. CHEERS


Автор: Price Swaniawski (не зарегистрирован), дата: 8 января, 2020 - 16:05
#permalink

This hybrid may express one of three different phenotypes, one that takes after Blue Magoo, another taking after Ms. This strain is certainly an overachiever with its extremely high THC content and lightning fast flowering time—as short as 4 weeks! Berkeley is known to give energetic, buzzy effects that are typical of sativas.
Though suited for indoor gardens, this sativa hybrid does well in greenhouse cultivation and has a flowering time of 70 to 77 days.


Автор: Sasha Smith (не зарегистрирован), дата: 11 января, 2020 - 17:32
#permalink

Thank you soo much for the informative post. I like it very much. cyberpunk 2077 release date. I am sure many will find this post useful.


Отправить комментарий

Приветствуются комментарии:
  • Полезные.
  • Дополняющие прочитанное.
  • Вопросы по прочитанному. Именно по прочитанному, чтобы ответ на него помог другим разобраться в предмете статьи. Другие вопросы могут быть удалены.
    Для остальных вопросов и обсуждений есть форум.
P.S. Лучшее "спасибо" - не комментарий, как все здорово, а рекомендация или ссылка на статью.
Содержание этого поля является приватным и не предназначено к показу.
  • Адреса страниц и электронной почты автоматически преобразуются в ссылки.
  • Разрешены HTML-таги: <strike> <a> <em> <strong> <cite> <code> <ul> <ol> <li> <dl> <dt> <dd> <u> <i> <b> <pre> <img> <abbr> <blockquote> <h1> <h2> <h3> <h4> <h5> <p> <div> <span> <sub> <sup>
  • Строки и параграфы переносятся автоматически.
  • Текстовые смайлы будут заменены на графические.

Подробнее о форматировании

CAPTCHA
Антиспам
9 + 8 =
Введите результат. Например, для 1+3, введите 4.
 
Текущий раздел
Поиск по сайту
Содержание

Учебник javascript

Основные элементы языка

Сундучок с инструментами

Интерфейсы

Все об AJAX

Оптимизация

Разное

Дерево всех статей

Последние комментарии
Последние темы на форуме
Forum