Мой локальный сервис порождает другой поток? - PullRequest
1 голос
/ 24 июня 2010

Чтобы иметь возможность писать «хороший» код между моим приложением / активами и локальным сервисом, мне нужно понять некоторые основные понятия Android:

Что мне интересно, так это то, что мое приложение (как и в моих действиях) и мой локальный сервис совместно используют один поток. То есть когда действия и локальная служба выполняют задачи, поставленные в очередь, эти задачи чередуются в ОДНОМ потоке, таким образом разделяя поток, или у службы есть собственный поток?

Кроме того, если локальная служба разделяет поток с действиями, а локальная служба выполняет прямой вызов (посредством обратного вызова) к одному из действий (т. Е. Без почтового сообщения), поток активности "останавливается" или выполняется эта конкретная функция в очереди, чтобы быть выполненной позже в любом случае?

/ Хенрик

1 Ответ

4 голосов
/ 24 июня 2010

Через Основы применения :

Подобно действиям и другим компонентам, службы запускаются в основном потоке процесса приложения. Чтобы они не блокировали другие компоненты или пользовательский интерфейс, они часто порождают другой поток для выполнения трудоемких задач (таких как воспроизведение музыки). См. Процессы и потоки , позже.

Теперь, если сервис - это отдельное приложение, это другая история.
также из Основы применения :

Во многих отношениях каждое Android-приложение живет в своем собственном мире:

  • По умолчанию каждое приложение запускается в своем собственном процессе Linux ....
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...