Форум программистов, компьютерный форум, киберфорум
Наши страницы

Программирование Android

Войти
Регистрация
Восстановить пароль
 
dmitry_stas
0 / 0 / 0
Регистрация: 16.06.2015
Сообщений: 2
#1

AlarmManager.setRepeating и долгое время выполнения - Программирование Android

16.06.2015, 20:05. Просмотров 265. Ответов 0
Метки нет (Все метки)

Привет всем.

А кто как решает задачу, когда время выполнения сервиса возможно будет больше чем периодичность вызова этого сервиса в alarmManager.setRepeating ? Ну например, alarmManager.setRepeating для проверки почты задан каждую минуту, а загрузка этой самой почты затянулась, и длилась скажем аж 4 минуты. Проверка в самом сервисе на то, что он уже запущен, это понятно. Но вот проблема в том, что за эти 4 минуты alarmManager все равно успел поставить в очередь еще 4 сервиса, которые все равно запустятся, когда первый отработает. Причем отработают сразу же при наступлении очереди, поскольку у них время запуска будет уже просроченное. А это как то не очень Пока решил вопрос не через alarmManager.setRepeating, а через alarmManager.set, и вызов самого себя в сервисе после того как отработала тяжелая длительная часть, но так не очень нравится, потому что если вдруг в процессе выполнения долгой части сервиса возникнет ситуация, что сервис вывалится, то alarmManager.set в нем самом может и не выполнится, и последующих запусков уже не будет. Можно конечно сделать еще одну периодическую проверку уже через alarmManager.setRepeating именно на проверку успешной отработки сервиса, но чета мне кажется это как то... Наверняка должно же быть более элегантное решение... Кто как решает?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
16.06.2015, 20:05
Здравствуйте! Я подобрал для вас темы с ответами на вопрос AlarmManager.setRepeating и долгое время выполнения (Программирование Android):

Время выполнения функции из C++ и из Java - Программирование Android
Здравствуйте! Пытаюсь оценить время выполнения функции из C++ и из Java. Они устроен одинаково - просто считают сумму, только написаны...

Размер view по время выполнения - Программирование Android
Здрасте Создаю класс наследованный от view. В нем рисуют на canvas. Только перед рисованием мне нужно узнать размер view или canvas. Как...

Ограничить время выполнения HTTP запроса - Программирование Android
Всем привет Имеется код, работающий на отдельном сервисе BufferedReader rdr = null; HttpClient client = new...

Изменить имя ресурса во время выполнения программы - Программирование Android
Доброго времени суток. допустим есть вот такая вещь : rsc = R.drawable.name1; Bitmap bMap=...

Про необновляемость вьюх во время выполнения UI-поток - Программирование Android
TextView.setText(""+555); try{TimeUnit.SECONDS.sleep(10);} catch (InterruptedException e){e.printStackTrace();}; ...

Закрыть диалог во время выполнения процесса (принудительное срабатывание dismiss() - Программирование Android
Всем привет! В приложении есть диалоговое окно с кнопкой, по нажатию которой начинается выполнение процесса. Длительность процесса -...

0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
16.06.2015, 20:05
Привет! Вот еще темы с ответами:

AlarmManager - Программирование Android
Всем привет. Взял код AlarmManager отсюда. В свой проект добавил AlarmManagerBroadcastReceiver.java и код AlarmManagerActivity.java в свое...

AlarmManager - Программирование Android
Добрый вечер, как задать время вручную ? alarmManager.set(AlarmManager.RTC, System.currentTimeMillis(), pendingIntent);

Не работает AlarmManager - Программирование Android
Суть проблемы в том что когда заеться время уведомления в это время нет.... Тут код есть...

AlarmManager + Notification - Программирование Android
Взялся за создания Нотификаций в определённое время. До этого такого ещё такого не делал, без помощи гугла не обошлось. В фрагменте...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.