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

Андроид устанавливает видимость кнопки по таймеру

У меня есть приложение, которое показывает отказ от ответственности в начале программы. Я хочу, чтобы кнопка оставалась невидимой в течение определенного времени, а затем стала видимой. Я настроил поток, который спит в течение 5 секунд, а затем пытается сделать кнопку видимой. Однако я получаю эту ошибку, когда выполняю свой код: 08-02 21: 34: 07.868: ERROR […]

RunOnUiThread Undefined для класса

Я пытаюсь бросить и предупредить диалог в потоке пользовательского интерфейса из моего фонового потока, но у меня проблемы с runOnUiThread, которые не определены. Я пробовал FindLocation.this.runOnUiThread и runOnUiThread, но оба, похоже, бросают ту же ошибку The method runOnUiThread(new Runnable(){}) is undefined for the type new LocationListener(){} (или …the type FindLocation ). Любые идеи почему? Вот […]

Создание представлений внутри рабочего потока

У меня есть требование генерировать растровое изображение из EditText, а затем выполнять некоторые манипуляции на нем. Моя основная проблема заключается не в вызове View.buildDrawingCache() в потоке пользовательского интерфейса и, возможно, его блокировании, особенно при разговоре о больших экранах (например, Nexus 10), так как EditText займет около 80% доступного размера экрана. Я Runnable s внутри ThreadPoolExecutor […]

Android – обновить растровое изображение по таймеру

У меня есть проект Android, состоящий из одного макета с ImageView. public class MainActivity extends AppCompatActivity { /* original and stretched sized bitmaps */ private Bitmap bitmapOriginal; private Bitmap bitmapStretched; /* the only view */ private ImageView iv; …. } Этот ImageView обновляется этой функцией запуска runnable = new Runnable() { @Override public void run() […]

Запустить задачу Async в рабочем потоке

У меня есть два вопроса: Можем ли мы запустить / выполнить задачу Async в рабочем потоке? Если да, методы onPreExecute() , onProgressUpdate(Progress…) и onPostExecute(Result) вызывают в потоке пользовательского интерфейса? Я хочу знать, что, поскольку у меня есть TCP-соединение, запущенное на рабочем потоке, и когда пакет получен, я хочу начать новый поток, чтобы выполнить синтаксический анализ […]

Остановка / уничтожение нити

У меня есть Служба, которая запускает Thread и Runnable. t = new Thread(new Runnable() { public void run() { doSomething(); } }); t.start(); Причиной потока является выполнение задачи Async doSomething () . Пока давайте не будем беспокоиться о другом классе AsyncTask. Я пробовал это, и это не работает для моего дела. Изменить: я не могу […]

Почему я должен использовать службу android вместо java-потока

Я запутался в сервисах android и java-потоке. Пожалуйста, помогите мне понять, в каком сценарии я должен их использовать. По моему пониманию Служба работает в фоновом режиме, так что делайте поток. Служба должна использоваться для таких операций, как работа в сети или воспроизведение mp3 в фоновом режиме, а также потоки. Итак, какова фактическая разница между ними […]

Использование параллельного использования Android

Android имеет множество разных способов одновременного выполнения кода на отдельных потоках. Но я не уверен, когда каждый из них должен использоваться или какие лучшие методы используются для этих разных способов. Когда / Почему следует использовать обработчики? Когда / Почему должны использоваться погрузчики? Когда / Почему следует использовать AsyncTasks? Когда / Why следует использовать FutureTask? Когда […]

Несколько IntentService или одна служба

Я немного смущен различием между IntentService и сервисом. Я понимаю, что IntentService имеет рабочую очередь, но есть ли какая-либо польза от использования нескольких IntentService над одной службой? Вот пример того, что я имею в виду. Скажем, я хочу, чтобы мое приложение извлекало данные из трех источников. Должен ли я запускать службу, которая запускает три потока, […]

Вызов stopSelf () в службе, пока поток запущен

Предположим, у меня есть код в обработчике onStart () моей Службы, чтобы запустить поток, чтобы сделать что-то, а затем вызвать stopSelf (). StopSelf () вызывается до завершения потока. Что именно происходит? Я проверил это сам, и мой поток продолжает выполняться до тех пор, пока он не будет завершен. Вызывает ли Android вызов stopSelf (), но […]