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

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

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

Низкая производительность потока - Программирование Android

22.06.2016, 16:36. Просмотров 212. Ответов 4
Метки нет (Все метки)

Добрый День!
Пишу программу под android с кодированием(телефон у меня ZTE v7, пишу на Eclipse). Кодирование основано на простых циклах. Так как эти циклы вешают приложение в безысходность на 3 -10 минут, кодирование я поместил в фоновый поток. (пробовал на AsyncTask, Thread, ..). Не понравилось, что кодирует очень долго. Поток не разбить на более мелкие параллельные потоки(алгоритм не позволит)

Эту программу компьютер выполнит менее, чем за секунду..
Когда выполняется кодирование, Clean Master не показывает, что android-у тяжело.

Так как телефон многоядерный, я и подумал, может поток выполняется низкопотребляющим ядром и надо как-то поток направить/переключить в другое ядро или как-то поставить приоритет? Есть какие-нибудь идеи?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
22.06.2016, 16:36     Низкая производительность потока
Посмотрите здесь:

Завершение потока - Программирование Android
Необходимо корректно завершить поток. Сейчас код такой class MyThread extends Thread { private void method() throws...

Завершения потока - Программирование Android
Можно как-нить запустить новый поток, только после того как завершится первый???

Остановка потока - Программирование Android
Доброго времени суток. Пишу первое приложение под андроид, поэтому прошу сильно не пинать. Вопрос в следующем: на данный момент при...

Оповещение в UI из потока - Программирование Android
Доброго времени. суть проблеммы в сл. не работает повторное оповещение UI из потока. в приложении создаеЦа новый поток для выполнения некой...

Аргументы Async потока - Программирование Android
Здравствуйте, такой вопрос есть поток типа: private class Parse_pre extends AsyncTask<String, Void, List<String>> { ...

Остановка зацикленого потока - Программирование Android
Есть активити. Из него запускается сервис. В методе onStartCommand сервиса, запускается поток, в котором присутствует бесконечный цикл. ...

Работа с ListView из потока - Программирование Android
Доброго всем здравия! Вот несколько вопросов, которые не смог разобрать самостоятельно по урокам: 1. как обратиться к списку из...

Ошибка потока в сервисе - Программирование Android
Создаю сервис, он должен выполнять парсинг сайта, загрузку звука с сайта, сохранение этого звука на флешку и воспроизведение. Написал код...

Подмена потока с микрофона - Программирование Android
Нужно подменипть поток с микрофона, чтобы отправить его при разговоре. Типа диалер, который вместо звука с микрофона будет пускать другой...

Возврат данных из потока - Программирование Android
День добрый. Скажите пожалуйста: имеется функция которая возвращает Vector<String>. Ее нужно выполнить в отдельном потоке, но так чтобы...

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

Не работает остановка потока! - Программирование Android
Помогите пожалуйста! Укажите на ошибку! Почему не останавливается поток???? public class FoneService extends Service { // ИМЯ...


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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
NanoDroid
0 / 0 / 1
Регистрация: 16.06.2016
Сообщений: 12
22.06.2016, 22:02     Низкая производительность потока #2
Насколько я знаю, выбирать ядро для потока нельзя.

Если Вы можете как-то оптимизировать свой алгоритм на С++, используйте JNI/NDK.
Или погуглите RenderScript. он работает на GPU.
Alexvp
107 / 71 / 8
Регистрация: 03.08.2014
Сообщений: 344
23.06.2016, 15:40     Низкая производительность потока #3
Не знаю что у вас за алгоритм, но попробуйте его изменить, коль такой объем длинных циклов получился.
Valakin
430 / 96 / 15
Регистрация: 21.02.2015
Сообщений: 729
23.06.2016, 16:51     Низкая производительность потока #4
Цитата Сообщение от fademike Посмотреть сообщение
компьютер выполнит менее, чем за секунду
телефон от компа ничем не отличается, меряйте время там и там для сравнения и ищите причину
fademike
1 / 1 / 0
Регистрация: 22.04.2016
Сообщений: 25
29.06.2016, 16:30  [ТС]     Низкая производительность потока #5
Цитата Сообщение от NanoDroid Посмотреть сообщение
Если Вы можете как-то оптимизировать свой алгоритм на С++, используйте JNI/NDK.
А нельзя ли большой цикл переписать на С++ с JNI/NDK и основная программа его использовала бы?

Цитата Сообщение от NanoDroid Посмотреть сообщение
Или погуглите RenderScript. он работает на GPU.
Почитал про RenderScript. Но, как я понял, он заточен для работы с изображениями, а для перебора массива чисел, я не понял как его использовать(( Мне кажется, вариант с RenderScript самый удобный. буду пытаться реализовать на нем. Если имеется уже опыт, то подскажите пожалуйста, как на нем реализовать!? И GPU работает только в функции root?
Yandex
Объявления
29.06.2016, 16:30     Низкая производительность потока
Ответ Создать тему
Опции темы

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