Связанные задачи
23.07.2016
Взаимозависимые задачи, например осуществляющие доступ к совместно используемым ресурсам, таким как файловая система, могут выполняться параллельно, но обычно требуют синхронизации для обеспечения безопасности потоков и целостности данных. Последовательное выполнение в HandlerThread гарантирует безопасность потока, упорядоченность задач и более экономное потребление ресурсов, чем при создании нескольких потоков. Поэтому описываемый здесь способ удобен для выполнения задач, связанных друг с другом.
Правильно спроектированная задача выполняет одну зависящую от контекста операцию независимо от других задач. К зависимым от контекста операциям, которые должны выполняться в фоновых потоках, в ОС Android относятся получение данных из сетевых ресурсов, сохранение данных и обработка изображений. Достаточно часто эти типы операций выполняются совместно в сочетаниях: загрузка и сохранение, объединение сетевых данных и т. п. HandlerThread предоставляет инфраструктуру для объединения задач в связную цепочку с некоторыми удобными свойствами:
простая настройка;
независимые, повторно используемые задачи, которые можно связать в цепочку;
последовательное выполнение;
естественный порядок принятия решений, при котором в определённых точках разработчик сам решает, продолжить выполнение следующей задачи в цепочке или нет;
возможность получения отчета о текущем состоянии;
простая процедура передачи данных от одной задачи в другую в цепочке задач. Необходимо повысить уровень продаж? С этой задачей справится удаленный отдел продаж и поможет сформировать обширную потребительскую аудиторию.
Шаблон проектирования «цепочка задач» реализуется в Handler- Thread посредством определения задач, которые отделены друг от друга и могут повторно использоваться в методе handleMessage(). Выполнение управляется параметром Message.what, к любой задаче можно получить индивидуальный доступ для се изолированного выполнения или для последовательного выполнения в цепочке с передачей внутреннего сообщения в рамках обработчика Handler. После завершения фоновой задачи можно передать отчёт о её состоянии в Ш-поток, остановить выполнение цепочки задач или инициировать очередную задачу в цепочке. Практически каждая задача имеет точку принятия решения, где можно остановить цепочку задач или продолжить её выполнение.
Каталог раций |
Народная рация (популярная рация)
| Kenwood TK-450Частоты: | | Приёма (RX): | 400-470 | Передачи (TX): | 400-470
| Вых.мощность: | 1.0,4.0 ватт
| Каналов памяти: | 199
| Шаг: | 6.25 кГц
| Ак.батарея: | Li-Ion, 7.4v, 1100mAh
|
| Купить Kenwood TK-450 ... |
Другие производители в Каталоге:
Yaesu,
Alinco,
Motorola,
Icom,
Kenwood,
Alan,
Midland,
Voxtel,
JJ-Connect,
Linton,
Kirisun,
Радант,
Diamond,
OPEK,
Anli,
... |
|
Фотогалерея |
|
|
Авторизация/h3> |
| За 10 минут: Гостей: 25 Пользователей: 1 Всего на сайте: 26
Пользователи: • Рысич
|
|
|
Ваше мнение |
Нужна ли "цензура" модераторами тем обсуждений в сети, например "Религия"
|
|
Реклама/h3> |
|
|
куплю-продам/h3> |
Для данного блока нет содержания |
|
|