Android приурочен к HTTP-запросу голодающим - PullRequest
0 голосов
/ 27 октября 2011

Здравствуйте, я разрабатываю приложение для Android, которое использует стандартный веб-просмотр и браузер Chrome.Мне нужно выполнять 1 HTTP-запрос каждые 500 миллисекунд к серверу, но я вижу, что поток каким-то образом остановлен или задержан, php, вызванный на сервер, выполняет вход в мою базу данных со временем запроса, и в определенное время я не получаю запросов,через некоторое время после того, как я получаю стопку запросов одновременно.

Есть ли какая-либо блокировка или сон, выполняемый над потоками?

Я сделал пару тестов, и вначале javascript выполнял действие, и у меня возникла та же проблема, поэтому я переместил элемент управления потоком Android, чтобы избежать проблем с JS, но даже поток есть в приложении Android.та же проблема.

Мы обнаружили, что если мы переместим планшет и начнем вращать страницу, приложение снова начнет работать и снова начнет работать.

Есть идеи?

Я не занимаюсь разработкой приложения для Android напрямую, я забочусь о веб-части приложения (приложение на стороне сервера и html + js. Так что мой опыт работы с Android немного ограничен, я искал по сети и ничего не нашелчтобы помочь моему другу решить эту проблему.

Спасибо всем.

1 Ответ

0 голосов
/ 27 октября 2011

Моя ставка на то, что логика синхронизации в коде немного нарушена. 500 миллисекунд - это не намного больше, чем обычная задержка в обоих направлениях, которую вы можете увидеть во многих сетях 3G и 4G. Если код неправильно учитывает вероятность того, что запрос будет длиться дольше, чем время повторения, вы можете получить ошибки, когда код заканчивается все дольше и дольше.

Вот аналогия: скажем, вы должны ходить в магазин каждый час. Сейчас 1:00, и вы собираетесь пойти в магазин. Вы понимаете, что вам нужно пойти в магазин рядом в 2:00. Итак, вы идете в магазин и возвращаетесь. Теперь нужно подождать до 2 часов. Но если уже 2:05, вы будете ждать way слишком долго.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...