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

ExecutorService "замораживает" UI - Android

Восстановить пароль Регистрация
 
Radzhab
12 / 12 / 0
Регистрация: 18.06.2011
Сообщений: 402
01.10.2013, 00:34     ExecutorService "замораживает" UI #1
В методе парсю несколько страниц сайта. UI подвисает. Как исправить ситуацию
Java
1
2
3
ExecutorService executor = Executors.newCachedThreadPool();
 
Future<List> future = executor.submit(new Callable<List>() {
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
01.10.2013, 00:34     ExecutorService "замораживает" UI
Посмотрите здесь:

При эмулировании вместо надписи "Hello world" отображается "android" Android
блокирование кнопок "Home" "Back" Android
Что означают конструкции "finally" и "throw new"? Android
Визуализация нажатия на изображение. Как поставить картинку на "нажатие" Android
Android ExecutorService
Как прикрутить "свой браузер" к странице - "фрагмент" Android
Работа с БД, связывание таблиц "фильмы", "жанры", "режиссеры" Android
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Netscape
 Аватар для Netscape
371 / 358 / 48
Регистрация: 02.10.2009
Сообщений: 712
Записей в блоге: 4
01.10.2013, 00:38     ExecutorService "замораживает" UI #2
Использовать Runnable вместо Callable не пробовали ?
Radzhab
12 / 12 / 0
Регистрация: 18.06.2011
Сообщений: 402
01.10.2013, 00:51  [ТС]     ExecutorService "замораживает" UI #3
МНе нужно получать данные. Поэтом я его юзаю

Java
1
2
3
4
5
6
7
8
9
10
ExecutorService executor = Executors.newCachedThreadPool();
 
                        Future<List> future = executor.submit(new Callable<List>() {
                            @Override
                            public List call() throws Exception {
                                
                                buf = GetHtml(url);
                                return buf;
                            }
                        });
Netscape
 Аватар для Netscape
371 / 358 / 48
Регистрация: 02.10.2009
Сообщений: 712
Записей в блоге: 4
01.10.2013, 00:55     ExecutorService "замораживает" UI #4
А через Runnable, значит, данные получить невозможно ?
Может UI фризиться не на получении данных, а уже после.
AsyncTask попробуйте, если Runnable не хотите.
Radzhab
12 / 12 / 0
Регистрация: 18.06.2011
Сообщений: 402
01.10.2013, 01:14  [ТС]     ExecutorService "замораживает" UI #5
Я просто хочу юзать Executorservice
KillAndEat
63 / 63 / 8
Регистрация: 17.05.2013
Сообщений: 286
01.10.2013, 13:11     ExecutorService "замораживает" UI #6
Для AsyncTask тоже можно юзать экзекуторы)

Добавлено через 4 минуты
Netscape, А как получить результат Runnable не используя самописных методов и глобальных переменных?
V0v1k
1157 / 981 / 1
Регистрация: 28.06.2012
Сообщений: 3,462
01.10.2013, 14:28     ExecutorService "замораживает" UI #7
вы, наверное, потом вызываете future.get() в UI потоке и UI поток ждет ответа.

Добавлено через 55 секунд
используйте обычный AsyncTask.
Netscape
 Аватар для Netscape
371 / 358 / 48
Регистрация: 02.10.2009
Сообщений: 712
Записей в блоге: 4
01.10.2013, 15:34     ExecutorService "замораживает" UI #8
А как получить результат Runnable не используя самописных методов и глобальных переменных?
Использовать интерфейсы, например.
KillAndEat
63 / 63 / 8
Регистрация: 17.05.2013
Сообщений: 286
01.10.2013, 16:32     ExecutorService "замораживает" UI #9
Netscape, зачем использовать 2 интерфейса когда можно использовать 1? В чем профит?
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
01.10.2013, 17:01     ExecutorService "замораживает" UI
Еще ссылки по теме:

Как "превратить" string "6.971245e-001" во float? Android
Android Выбор платформы разработки "1С Мобильная платформа" или "Android Studio"
Android Ошибка "Unknown method "e" of "org.apache.commons.logging.Log"
Постепенно вывести на экран слово "Java", в котором буквы состоят из "интересных" элементов Android
Android Service, ExecutorService или что-то другое?

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

Или воспользуйтесь поиском по форуму:
Netscape
 Аватар для Netscape
371 / 358 / 48
Регистрация: 02.10.2009
Сообщений: 712
Записей в блоге: 4
01.10.2013, 17:01     ExecutorService "замораживает" UI #10
Цитата Сообщение от KillAndEat Посмотреть сообщение
Netscape, зачем использовать 2 интерфейса когда можно использовать 1? В чем профит?
ООП, такой ООП.
Yandex
Объявления
01.10.2013, 17:01     ExecutorService "замораживает" UI
Ответ Создать тему
Опции темы

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