Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 16.09.2014, 18:49
Аспирант
Отправить личное сообщение для livelover Посмотреть профиль Найти все сообщения от livelover
 
Регистрация: 17.01.2014
Сообщений: 39

Прервать синхронный запрос.
Как выставить таймер XMLHTTPReques? синхронному.
Или как убить синхронный запрос по таймеру?

Возможно?
Ответить с цитированием
  #2 (permalink)  
Старый 17.09.2014, 10:16
Профессор
Отправить личное сообщение для tsigel Посмотреть профиль Найти все сообщения от tsigel
 
Регистрация: 12.12.2012
Сообщений: 1,398

http://xmlhttprequest.ru/
Я так понимаю что прервать можно только асинхронный запрос.

Вообще если вам понадобился синхронный запрос - скорее всего вы что-то делаете не так.
Ответить с цитированием
  #3 (permalink)  
Старый 17.09.2014, 15:49
Аватар для Aetae
Тлен
Отправить личное сообщение для Aetae Посмотреть профиль Найти все сообщения от Aetae
 
Регистрация: 02.01.2010
Сообщений: 6,589

livelover, вроде можно поставить таймаут, но не везде). Сам не пробовал, ибо см. выше.
Ага, см. свойство timeout: https://developer.mozilla.org/en-US/..._Compatibility

..upd хотя нет
Цитата:
Note: You may not use a timeout for synchronous requests with an owning window.
Так что выкидывай свои синхронные запросы на помойку.
__________________
29375, 35

Последний раз редактировалось Aetae, 17.09.2014 в 15:56.
Ответить с цитированием
  #4 (permalink)  
Старый 17.09.2014, 15:50
Профессор
Отправить личное сообщение для tsigel Посмотреть профиль Найти все сообщения от tsigel
 
Регистрация: 12.12.2012
Сообщений: 1,398

Aetae,
А как? Если запрос синхронный то все таймауты отработают после запроса? Или имеется в виду таймаут самого запроса?
Ответить с цитированием
  #5 (permalink)  
Старый 17.09.2014, 16:01
Аватар для Aetae
Тлен
Отправить личное сообщение для Aetae Посмотреть профиль Найти все сообщения от Aetae
 
Регистрация: 02.01.2010
Сообщений: 6,589

tsigel, имеется ввиду таймаут самого запроса. Но видать его реализировать поленились, потому это просто биндинг на обычный сеттаймаут и синхронными запросами не работает.(имхо, нафиг он тогда нужен - не понтно)
__________________
29375, 35
Ответить с цитированием
  #6 (permalink)  
Старый 18.09.2014, 00:43
Аспирант
Посмотреть профиль Найти все сообщения от petya
 
Регистрация: 02.09.2014
Сообщений: 77

Сообщение от Aetae
Но видать его реализировать поленились
Как можно реализовать прерывание синхронного кода в однопоточном языке? О чем ты вообще говоришь?
Ответить с цитированием
  #7 (permalink)  
Старый 18.09.2014, 00:48
Аватар для Aetae
Тлен
Отправить личное сообщение для Aetae Посмотреть профиль Найти все сообщения от Aetae
 
Регистрация: 02.01.2010
Сообщений: 6,589

petya, на более низком уровне, вестимо.
__________________
29375, 35
Ответить с цитированием
  #8 (permalink)  
Старый 18.09.2014, 01:02
Аспирант
Посмотреть профиль Найти все сообщения от petya
 
Регистрация: 02.09.2014
Сообщений: 77

Сообщение от Aetae
petya, на более низком уровне, вестимо.
Ну, вот допустим, у нас есть блокирующая операция, которая заблокировала поток. Откуда ее можно прервать? Как это должно выглядеть, я не пойму? Ее заранее прерывать чтоли надо? Все отложенные асинхронные функции становяться в очередь. Пока блокирующая операция не освободит поток они не отработают. Если такое возможно будет сделать, ты фактически уже будешь запускать прерывание в другом потоке, это уже не однопоточная модель. Или я что-то не понимаю
Ответить с цитированием
  #9 (permalink)  
Старый 18.09.2014, 01:12
Профессор
Отправить личное сообщение для tsigel Посмотреть профиль Найти все сообщения от tsigel
 
Регистрация: 12.12.2012
Сообщений: 1,398

petya, Aetae имел в виду что прирывание должно происходить нативно методом браузера (который уже отнють не однопоточный) методами самого реквеста, но как выяснилось что почти ни один браузер не доделал этот метод.
Ответить с цитированием
  #10 (permalink)  
Старый 19.09.2014, 19:29
Аспирант
Отправить личное сообщение для livelover Посмотреть профиль Найти все сообщения от livelover
 
Регистрация: 17.01.2014
Сообщений: 39

Вообще вопрос возник из такой задачи:
по window.onbeforeunload надо плать запрос на хост, который принимает запросы но вообще на них не отвечает.

*Если запрос Асинхронный, то запрос тупо может неуйти, страница уже закрывается.
* Если запрос Синхонный, то броузер долго весит, ждёт запроса. А его нет и не будет.
Вот так вот...
*Если син
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
AJAX запрос в Internet Explorer срабатывает через раз nikolayseo jQuery 5 13.11.2012 00:13
Запрос на сервер Serjuk AJAX и COMET 6 04.06.2012 03:09
Запрос - ответ(VK,json) Slawaq Серверные языки и технологии 4 25.09.2010 00:28
Синхронный запрос geniyz jQuery 5 08.05.2009 03:30
Синхронный запрос данных по AJAX Shasoft AJAX и COMET 2 03.03.2009 14:07