Он откладывает некоторые шаги в своем алгоритме параллельной обработки для подкласса.

Он позволяет подклассам переопределить свои методы.

Он позволяет своим методам работать в разных потоках управления.

Он отделяет интерфейс от реализации, так они могут изменяться независимо.

Вопрос 24

Какие из следующих фреймворков используются внутри фреймворка Android AsyncTask?

Java Executor

Android IntentService

Android HaMeR

Android Activity

Вопрос 25

Что из следующего является поведением по умолчанию AsyncTasks в последних версиях Android?

Пул потоков запускает несколько AsyncTasks одновременно в процессе, чтобы использовать многоядерные чипсеты.

Фреймворк Android HaMeR используется внутри фреймворка AsyncTask для передачи сообщений из фонового потока в поток пользовательского интерфейса.

Единственный фоновый поток в каждом процессе запускает все doInBackground () методы AsyncTasks.

Вопрос 26

Что из следующего являются различными способами параллельной загрузки изображения?

Выполнение AsyncTasks.

Вызов удаленного метода через Binder.

Размещение и обработка Runnable.

Отправка и обработка сообщений.

Вопрос 27

Что из следующего является преимуществом AsyncTask фреймворка по отношению к фреймворку HaMeR?

Он обеспечивает низкие накладные расходы для синхронизации, переключения контекста и перемещения данных.

Он простой в использовании как для простых, так и для сложных приложений с параллельными вычислениями.

Он обеспечивает относительно прозрачную масштабируемость с помощью своего использования Java Thread Pool Executor.

Он позволяет осуществлять взаимодействие между многими фоновыми потоками.

Вопрос 28

Что из следующего лучше всего описывает способы, с помощью которых потоки в AsyncTask и HaMeR фреймворках взаимодействуют.

Фоновые потоки в AsyncTask явно взаимодействуют с UI потоком.

Фоновые потоки в HaMeR неявно взаимодействуют с UI потоком.

Фоновые потоки в AsyncTask неявно взаимодействуют с UI потоком.

Фоновые потоки в HaMeR явно взаимодействуют с UI потоком.

Вопрос 29

Какие из следующих Gang-of-Four паттернов применяются к Android фреймворкам параллельных вычислений?

Active Object

Template Method

Visitor

Monitor Object

Strategy

Factory Method

Вопрос 30

Какой из следующих POSA паттернов применяются к Android фреймворкам параллельных вычислений?

Command Processor

Extension Interface

Bridge

Template Method

Half-Sync/Half-Async

Thread-Specific Storage

Вопрос 31

Какие из следующих паттернов применяются в соответствующих фреймворках?

Active Object применяется в Java ExecutorService.

Bridge применяется в HaMeR.

Command Processor применяется в HaMeR.

Factory Method применяется в AsyncTask.

Strategy применяется в HaMeR.

Thread-Specific Storage применяется в Java Executor.

Вопрос 32

Что из следующего является преимуществом применения паттерна Thread-Specific Storage?

Это позволяет подклассам переопределить методы.

Это отделяет интерфейс от реализации, так они могут изменяться независимо.

Это уменьшает накладные расходы синхронизации для доступа к объекту.

Это откладывает некоторые шаги в алгоритме параллельной обработки для подкласса.

Вопрос 33

Что из следующего является известным применением паттерна Thread-Specific Storage?

Класс Android Looper.

Фреймворк Java Executor.

Стандарт C errno macro.

Android IntentService.

Вопрос 34

Что из следующего является предназначением паттерна Command Processor?

Определить запросы сервиса как единицы параллельного вычисления и запускать запросы сервиса в разных потоках из запрашивающего клиентского потока.

Обеспечить нескольким потокам использовать одну «логически глобальную» точку доступа без накладных расходов блокировки доступа для каждого объекта.

Упаковывать функциональность приложения, а также его параметризацию, в объект, чтобы сделать его пригодным для использования в другом контексте.

Отделить асинхронную и синхронную обработку сервиса в системе параллельных вычислений, путем введения двух сообщающихся слоев – один для асинхронной и другой для синхронной обработки сервиса, для упрощения программирования без чрезмерного снижения производительности.

Вопрос 35

Что из следующего является негативным последствием использования паттерна Command Processor?

Поддержка двусторонних операций требует дополнительных усилий программирования.

Клиент не заблокирован в течении обработки.

Функциональность управляется отправителем, а не получателем.

Поддержка контекстной и зависящей от времени выполнения логики приложения.

Вопрос 36

Что из следующего является примером ситуации, при которой применяется паттерн Active Object?

Когда методы объекта могут блокироваться в течение длительного времени, в течение их исполнения.

Когда дополнительные возможности должны быть реализованы последовательно для всех запросов к сервису.

Когда методы интерфейса объекта должна определить свои границы параллельного вычисления.

Когда есть необходимость отделить решение о том, какой кусок кода должен быть выполнен, от решения, какой контекст или время этого должно произойти.

Когда это необходимо для модернизации унаследованного кода, чтобы быть поточно-безопасным.

Когда несколько запросов метода клиента могут работать одновременно для объекта.

Вопрос 37

Что из следующего является известным использованием паттерна Active Object?

Фреймворк Android IntentService.

Фреймворк Java ExecutorService.

Фреймворк Java Executor.

Фреймворк Android HaMeR.

Вопрос 38

Что из следующего лучше всего описывает мотивацию для паттерна Half-Sync/Half-Async?

Гарантировать усовершенствования для сервиса, предоставляемые компонентом, не нарушая существующий код.

Отделить кратковременные операции от длительных операций в программах с параллельными вычислениями.

Упростить программирование параллельных вычислений без чрезмерного снижения производительности.

Гарантировать, что только один Looper находится в каждом потоке в программе с параллельными вычислениями.

Вопрос 39

Что из следующего верно описывает Android сервис?

Сервис это компонент приложения, который обеспечивает единую, ориентированную вещь для пользователя.

Сервис это компонент приложения, который отвечает на общесистемные широковещательные объявления.

Сервис это компонент приложения, который может выполнять длительные операции в фоновом режиме и не имеет пользовательского интерфейса.

Сервис это компонент приложения, управляющий доступом к структурированным наборам данных путем инкапсуляции данных и обеспечением механизмов для определения безопасности данных.

Вопрос 40

Что из следующего является ключевым различием между Started Service и Bound Service?

Bound Service предлагает интерфейс клиент/сервис, который позволяет расширенную двустороннюю коммуникацию между клиентом и сервисом.

Bound Service работает только до тех пор, пока клиент связан с ним, в то время как Started Service может работать бесконечно.

Bound Service запускается по требованию, в то время как Started Service предварительно запускается при загрузке системы.