2013-05-06 3 views
-2

ЕСЛИ Я использовал синхронный и асинхронный запрос ajax на той же странице, когда страница загружается в браузере, а синхронный запрос - первый, а асинхронный - второй запрос на странице. Так что там будет?Асинхронный и синхронный

  1. будет асинхронный запрос до тех пор, пока синхронный запрос не получит данные с сервера.

  2. Или Асинхронный запрос не будет ждать и выполнить как запрос?

Я попытался найти этот ответ, но никуда не денусь. Пожалуйста, дайте ответ, если у кого есть

+9

Если вы только что попробовали, вы, вероятно, могли бы увидеть, что произойдет. Ответ: асинхронный запрос будет ждать синхронного возврата с сервера (или тайм-аута) перед отправкой его запроса. – Ian

+1

Если синхронный запрос не заблокировал выполнение скрипта, он не будет синхронным. – JJJ

+0

Если вы замените «ждать, прежде чем идти дальше» для синхронного, и «продолжайте движение, не нужно ждать меня» для асинхронного в вашем вопросе, вы увидите ответ. – j08691

ответ

1

Синхронный означает, что код, который инициирует синхронные запросы, ждет и блокирует, пока запрос не завершится. Вызывающий и вызываемый коды: «синхронно». Асинхронный означает, что код, который инициирует запрос, продолжается немедленно, и асинхронный вызов завершится через некоторое время. Вызывающий и вызываемый коды: «не синхронизирован» или асинхронный.

Таким образом, если ваш код запускает синхронный запрос, он ждет, пока этот запрос не будет завершен. Пока что ничего другого не произойдет, поэтому асинхронный запрос не будет запущен до тех пор, пока синхронный не завершится.

Если вы сначала запускаете асинхронный запрос и синхронный, то не обязательно ясно, какой код будет завершен/выполнен первым, так как асинхронный запрос может быть завершен в любое время.

0

Асинхронный будет выполняться, когда ваш синхронный запрос будет выполнен. Таким образом, номер 1.

Смежные вопросы