Страница 1 из 1

Многократный Thread

Добавлено: 13 апр 2014, 11:48
Rustam
Задача:
1. Создаю Клиент для опрос порта девайса.
Проблема:
как создать автоматический опрос порта по времени
одноразовый опрос создается в Thread - запускается однократно при нажатии Button
получает ответ от Сервера и выводит его

Никак не могу зациклить Thread на вызов его через каждые 1000 мс
например на форме есть CheckButton при галке на нем хотелось бы вызывать Thread автоматически

Новичок в Java-просто возникла тема написать приложения для Android
прочитал и Thread и Handler и AsyncTask - пробовал все - нифига не получается многократно вызвать Thread


Попутно:
Есть ли в Activity такой метод который выполняется постоянно пока активно Activity, чтобы туда засунуть вызов Thread по времени

Re: Многократный Thread

Добавлено: 13 апр 2014, 12:23
rezak90
Для тайминга используй ScheduledExecutorService
Rustam писал(а):Есть ли в Activity такой метод который выполняется постоянно пока активно Activity, чтобы туда засунуть вызов Thread по времени
нет

Re: Многократный Thread

Добавлено: 13 апр 2014, 12:58
Rustam
rezak90 писал(а):Для тайминга используй ScheduledExecutorService
Rustam писал(а):Есть ли в Activity такой метод который выполняется постоянно пока активно Activity, чтобы туда засунуть вызов Thread по времени
нет

Все спасибо работает
:geek: :geek: :geek:

Re: Многократный Thread

Добавлено: 13 апр 2014, 22:17
Rustam
Конечно же следующий вопрос как убить этот периодический процесс? )))
кусок кода
if (automatic){
service.scheduleAtFixedRate(new Runnable() {

@Override
public void run() {
// TODO Auto-generated method stub
hand.post(UpdateStatus);
}
}, 0, 1, TimeUnit.SECONDS);
}
else{
service.schedule(new Runnable() {

@Override
public void run() {
// TODO Auto-generated method stub
hand.post(UpdateStatus);
}
}, 0, TimeUnit.SECONDS);
service=null;
}


service.wait() - выдает ошибку
service.shutdown() - вообще никак не влияет
service=null - позволяет хотябы не начинать периодическое выполнение

Re: Многократный Thread

Добавлено: 13 апр 2014, 22:18
Rustam
hand = Handler
тут просто для примера в будущем там будет стоять Thread который будет опрашивать порт и по Handler вытаскивать данные с порта