Показать сообщение отдельно
  #1 (permalink)  
Старый 23.01.2009, 22:33
Сеня
 
Сообщений: n/a

Паралельное выполнение одной и той-же функции
Здравствуйте,

Есть функция которая делает запрос к серверу и получает от него ответ и передаёт дальше, - с этим проблем нет.

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

У функции есть ещё параметр timeLimit
ну то есть она какое то время ждёт ответа от сервера, и если его не получает в
заданный промежуток времени, - то сообщает об ошибке.
в начале функции устанавливается таймер:
var myAJtimer= setTimeout(onTimeEnd,timeLimit);

ну а в конце если ответ пришёл нормально то:
window.clearTimeout(myAJtimer);

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

Итак вопрос: Так что же из моих предположений верно? - То есть могут ли пересекаться значения, и если да, то как сделать что бы область видимости переменных не пересекалась.

если не понятно объяснил, спрашивайте, попытаюсь рассказать лучше.
Ответить с цитированием