Articles of многопоточности

Android-потоки по умолчанию и их использование

Я работаю над андроидной библиотекой и препятствую замедлению приложения. Я делаю столько, сколько могу, в отдельных потоках. В настоящее время я изучаю, какие темы несет моя библиотека, за что не отвечает. Я создал очень простое приложение для Android и тестировал до и после. Важная часть – это то, что происходит раньше и почему все те […]

Постоянно контролировать датчик в Android

Я пытаюсь выяснить, как лучше всего контролировать датчик акселерометра с частотой опроса менее 0,25 миллисекунды. Я внедрил параметр пользовательского интерфейса, чтобы пользователь мог переключиться на постоянное состояние мониторинга и не дал ему последствий для разгрузки батареи. Будет ли удаленная служба лучше всего работать над потоком демона из-за того, как Android обрабатывает очистку памяти и потоков? […]

Выполнение долговременной работы в onDestroy

У меня есть «длительная» операция очистки, которую мне нужно выполнить в onDestroy() моей Activity . Каков наилучший способ сделать это? Если я использую Thread для этого, мой onDestroy() немедленно вернется; Но что происходит с ссылкой на Thread? Я ищу совет по любым последствиям / gotchas / trip-wire, которые мне нужно знать здесь, так как я […]

RxJava Android – данные загружаемого кеша на соответствующие потоки

Я изучаю RxJava и ее применимость к Android, и я пытаюсь реализовать простой пример использования кеша-экрана, как показано на следующем графике ASCII: ————— — failure –| Load data |– success — | ————— | VV ——————- ————- | Get from cache | | Filter | ——————- ————- | | | V | —————- ————- ————>| […]

Обновление пользовательского интерфейса при работе на фоне

У меня есть операция обновления базы данных, которая имеет активность, которая продолжает обновлять процент и запускается внутри AsyncTask. Внутри doInBackground () Я вызываю контроллер, который обновляет базу данных и постоянно обновляет процент активности, однако, если я нажимаю кнопку «Главная» или «Назад», операция отменяется. Что ты предлагаешь мне делать? Я пытался запустить службу внутри doInBackground (), […]

Как правильно настроить код Android RenderScript на Nvidia Shield

Я реализовал небольшую CNN в RenderScript и хочу профилировать производительность на другом оборудовании. На моем Nexus 7 времена имеют смысл, но на экране NVIDIA Shield этого нет. CNN (LeNet) реализуется в 9 слоях, находящихся в очереди, вычисление выполняется последовательно. Каждый уровень настраивается индивидуально. Вот пример: conv1 pool1 conv2 pool2 resh1 ip1 relu1 ip2 softmax nexus7 […]

Glide assert: java.lang.IllegalArgumentException: вы должны вызвать этот метод в основном потоке

Любой использовал скольжение для получения изображений из фонового потока? Я продолжаю утверждать: java.lang.IllegalArgumentException: You must call this method on the main thread Но согласно этой теме, он должен работать (я думаю): https://github.com/bumptech/glide/issues/310 Тем не менее, я не могу заставить его работать, если только я не назову его из основного потока. Вот что я пытаюсь сделать […]

Фоновые задания для Android для синхронизации с веб-службой

Не могли бы вы рассказать, какой правильный способ выполнять задания синхронизации в Android (например, если у меня около 5 заданий)? Заметка! По заданию синхронизации я имею в виду поток, который работает в фоновом режиме и отправляет некоторые данные (например, аналитику) через веб-службу … Для более подробной информации, пожалуйста, прочитайте более подробное описание: У меня есть […]

Улучшение производительности OpenCV Android – быстрое отслеживание объектов

Я пытаюсь реализовать приложение быстрого отслеживания объектов на Android Моя логика выглядит следующим образом Удалите все цвета, за исключением желаемого цветового диапазона. Гладкое изображение с использованием GaussianBlur Найти наибольший радиус круга с помощью HoughCircles Вид приложения работает нормально, но производительность плохая, и я бы хотел ускорить свою работу как минимум в 5 раз быстрее. Я […]

Приоритет ThreadPoolExecutor в Java (Android)

Я пытаюсь сделать ThreadPoolExecutor с приоритетом. Поэтому я определяю private static ThreadPoolExecutor threadpool = new ThreadPoolExecutor(30, MAXPOOL, MAXPOOL, TimeUnit.SECONDS, queue, new mThreadFactory()); Итак, ключ – это ссылка на очередь. Но когда я заявляю: static PriorityBlockingQueue<mDownloadThread> queue=new PriorityBlockingQueue<mDownloadThread>(MAXPOOL,new DownloadThreadComparator()); Компилятор дает ошибку в первой строке: конструктор ThreadPoolExecutor (int, int, int, TimeUnit, PriorityBlockingQueue, FileAccess.mThreadFactory) не определен с […]

Intereting Posts