Ajax Heartbeat с использованием setInterval, предотвращая несколько вызовов одновременно

Я хочу сделать AJAX-вызов, используя jQuery в качестве «пульса» в фоновом режиме, чтобы мое веб-приложение могло проверять наличие новых данных. Например каждые 10 секунд.

Я видел на других постах, что можно использоватьsetInterval() вызвать метод, который делает вызов каждые X миллисекунд.

Однако что произойдет, если мой вызов AJAX займет более 10 секунд? Я все еще хочу, чтобы он выполнил последний запрос, и я не хочу, чтобы другой вызов был инициирован, когда он уже выполняется. Это может привести к тому, что одна и та же информация будет размещена на странице дважды!

Как реализовать этот метод для моего метода ожидания завершения исходного вызова AJAX, а не просто «каждые 10 секунд», когда исходный вызов может быть еще не завершен.

Ответы на вопрос(3)

Ваш ответ на вопрос