Форум программистов, компьютерный форум, киберфорум
Программирование Android
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.75/4: Рейтинг темы: голосов - 4, средняя оценка - 4.75
0 / 0 / 0
Регистрация: 04.06.2012
Сообщений: 23

Возобновление работы потока в AsyncTask

23.02.2015, 18:59. Показов 822. Ответов 1
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте помогите найти решение.
Есть AsyncTask в doInBackground крутится таймер, задача состоит в том что бы этот таймер останавливать и возобновлять его работу. У меня получается его остановить, но как возобновить его работу до меня не доходит.
Буду признателен за помощь

В MainActivity:

Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
    public void onPause() {
        super.onPause();
         Log.d("Logs", "onPause");
         if(DialogStartGameFirstPlayer.timerGame!=null){
               DialogStartGameFirstPlayer.timerGame.pause();
           }
        }
 
    
    @Override
    public void onResume() {
        super.onResume();  
        Log.d("Logs", "onResume");
        if(DialogStartGameFirstPlayer.timerGame!=null){
            DialogStartGameFirstPlayer.timerGame.resume();
          }
    }
А вот AsyncTask:

//Методы остановки/перезапуска
Java
1
2
3
4
5
6
7
8
9
public void pause()
    {
        this.isPaused = true;
    }
 
    public void resume()
    {
        this.isPaused = false;
    }


//doInBackground
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
@Override
    protected Void doInBackground(Void... params) {
 
           
                for(i=60;i>=0;i--){
                if(!isPaused){
                    try {
                        TimeUnit.SECONDS.sleep(1);
                    } catch (InterruptedException e) {
                        // TODO Auto-generated catch block
                        e.printStackTrace();
                    }
                    
                      publishProgress(i);
                      Log.d("Logs", "Timer:" +i);
                      
                  }else{
                    try {
                        TimeUnit.SECONDS.sleep(1000);
                    } catch (InterruptedException e) {
                        // TODO Auto-generated catch block
                        e.printStackTrace();
                    }
                }
            }
  
 
      return null;
    }
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
23.02.2015, 18:59
Ответы с готовыми решениями:

Завершение потока AsyncTask
Доброго времени суток. Возникла проблема с закрытием потока. Первый раз код выполняется и все норм, но т.к. при нажатии на кнопку...

Как получить значение String из UI потока в потоке AsyncTask?
Есть 4 шт. EditText. Нужно получить их значения в потоке AsyncTask. Вот весь мой код package com.examplemy.activity2; ...

Пауза/возобновление работы потока
драсте подскажите как сделать шоб поток в определеном месте остановился а в нужный момент команда с основнова процеса сняла этот поток с...

1
ComfyMobile
 Аватар для Nixy
401 / 282 / 34
Регистрация: 24.07.2012
Сообщений: 916
23.02.2015, 19:18
делай метод, который вернет тебе true если таймер досчитал до предела, и ставь его в цикл while
Java
1
2
3
4
5
6
7
while(!isEnd()){
if(!isPaused){
 // код отсчета
 }else{
  // нет отсчета
 }
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
23.02.2015, 19:18
Помогаю со студенческими работами здесь

Thread - сортировки массива (приостановка потока и возобновление работы)
Доброго времени суток. Суть задачи такова... Мне надо было сделать програмку, где 2 потока сортируют один и тот же массив двумя разными...

Возобновление потока cin.
Всем привет =) С недавних пор изучаю С++, и вот однажды, во время выполнения одного из заданий из учебника Страуструпа, наткнулся я на...

Приостановка/возобновление потока
Здравствуйте, гуру многопоточного программирования! Помогите, пожалуйста, разобраться с приостановкой, возобновлением. Суть такова,...

Многопоточность. Пауза и Возобновление потока
Вот мои эксперименты с потоками в Java! Пауза потока работает, но поток не хочет возобновляться main.java package main; public...

Приостановка, затем возобновление потока в JavaFX
Доброго времени суток. Изучаю Java, собственно вопрос - как можно с помощью элементов управления JavaFX приостановить, а затем...


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

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
SDL3 для Web (WebAssembly): Работа со звуком через SDL3_mixer
8Observer8 08.02.2026
Содержание блога Пошагово создадим проект для загрузки звукового файла и воспроизведения звука с помощью библиотеки SDL3_mixer. Звук будет воспроизводиться по клику мышки по холсту на Desktop и по. . .
SDL3 для Web (WebAssembly): Основы отладки веб-приложений на SDL3 по USB и Wi-Fi, запущенных в браузере мобильных устройств
8Observer8 07.02.2026
Содержание блога Браузер Chrome имеет средства для отладки мобильных веб-приложений по USB. В этой пошаговой инструкции ограничимся работой с консолью. Вывод в консоль - это часть процесса. . .
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru