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

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

Войти
Регистрация
Восстановить пароль
 
DemD10
58 / 47 / 12
Регистрация: 03.09.2013
Сообщений: 439
#1

Что будет если не завершена задача в Timer - Программирование Android

13.01.2016, 12:37. Просмотров 166. Ответов 3
Метки нет (Все метки)

Всем привет, вот что заинтересовало, допустим есть какая либо задача которая выполняется с интервалом в 5 секунд. Создается новый поток в котором выполняется задача, допустим, задача не завершилась за 5 секунд. Что происходит? Создается еще один поток? Или этот прекращает свою работу ? И если создается новый поток, как сделать так чтобы задача выполнялись не по таймеру, а друг за другом. Надеюсь, вопрос понятен.
0
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
13.01.2016, 12:37
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Что будет если не завершена задача в Timer (Программирование Android):

Что будет, если установленная ОЗУ будет от разных производителей? - Оперативная память
Добрый вечер! На мамке 2 слота для оперативки. купил недавно 2 гб OCZ. И сегодня 1гб другой фирмы. Что может случится если 2 разные фирмы...

Что будет выводить puts, если в конце строки не будет нулевого байта - C (СИ)
что будет выводить puts, если в конце строки не будет нулевого байта

Что будет если к пустой строке применить strtoint. Какое число будет присвоено? - Delphi
Что будет если к пустой строке применить strtoint. Какое число будет присвоено?

Что будет если СО будет двигаться навстречу свету? - СТО
Пусть у нас есть луч света, движущийся навстречу СО. И пусть СО тоже двигается прямолинейно со скоростью света навстречу этому лучу света....

А что будет, если - СТО
белая дыра взорвётся под горизонтом чёрной?

Что будет, если - Assembler
Что будет, если написать MOV AX,osh между строками MOV AX, @DATA MOV DS, AX MASM MODEL SMALL .DATA priv db...

3
Spelcrawler
527 / 497 / 111
Регистрация: 12.03.2014
Сообщений: 1,649
Завершенные тесты: 1
13.01.2016, 13:01 #2
Цитата Сообщение от DemD10 Посмотреть сообщение
как сделать так чтобы задача выполнялись не по таймеру, а друг за другом
В AsynkTask в обычном цикле можно гонять задачу
1
Pablito
2496 / 1980 / 618
Регистрация: 12.05.2014
Сообщений: 6,923
Завершенные тесты: 1
13.01.2016, 13:01 #3
Лучший ответ Сообщение было отмечено автором темы, экспертом или модератором как ответ
вылетит исключение
Bash
1
java.lang.IllegalThreadStateException: Thread already started.
поэтому , имхо, лучше использовать один из ExecutorService
например так
Java
1
2
        ScheduledExecutorService executor = Executors.newSingleThreadScheduledExecutor();
        executor.scheduleAtFixedRate(runnableTask, 0, 5, TimeUnit.SECONDS);
параметр runnableTask это наша задача (Runnable или свой класс implements Runnable)
например
Java
1
2
3
4
5
6
7
8
9
10
11
12
    final Runnable runnableTask = new Runnable() {
        @Override
        public void run() {
            Log.i("***", "Thread start.");
            try {
                Thread.sleep(10000);
            } catch (InterruptedException e) {
                e.printStackTrace();
            }
            Log.i("***", "Thread end.");
        }
    };
Пока предыдущая зада не завершится - новая не запустится.

мало кто пользуется экзекутор сервисами, потому что не читали состав пакета java.util.concurrent.*
а там пипец сколько всего вкусного, мощного и удобного )
2
DemD10
58 / 47 / 12
Регистрация: 03.09.2013
Сообщений: 439
13.01.2016, 13:47  [ТС] #4
Паблито, даааа, вещь))
0
13.01.2016, 13:47
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
13.01.2016, 13:47
Привет! Вот еще темы с ответами:

А что будет, если... - Сети
Итак, дано: - Провайдер, привязавший IP-адрес к MAC-адресу сетевой карты - Два компа - один с одним МАС-адресом, другой - с таким...

Что будет если так сделать? - C++
Всем привет! Что будет если применить такую конструкцию int global; void Test(const int& a) { global = a; } То...

Что будет если не связать таблицы? - MS Access
Что будет если не связать таблицы? И вообще зачем это нужно?

Что будет, если убрать проверку на 0? - Assembler
Подскажите, пожалуйста, 2 вещи: 1. Что будет, если строки 31,32,33 убрать (это сравнение знаменателя с 0)? 2. Как еще можно сравнить...


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

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

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