Processos

by Paco Pomet / from beautifuldecay.com

Segue abaixo uma lista de tipos de processos da maneira que o Android categoriza e define suas prioridades: processos

  • Processos Ativos: São processos em interação com usuário (foreground). São os processos mantidos a todo custo pelo gerenciador;
  • Processos Visíveis: São processos que estão visíveis, mas não estão interagindo com o usuário. Estes processos somente são terminados em casos de extrema necessidade, para que um processo ativo continue executando;
  • Processos Iniciados: São processos hospedando serviços que foram iniciados e não possuem interface visível. Como não interagem diretamente com o usuário possuem um nível de prioridade inferior ao de processos visíveis;
  • Processos em Segundo Plano: São processos de atividades que não estão visíveis e não possuem serviços iniciados. Estes processos são finalizados utilizando-se o padrão Last–Seen–First–Killed;
  • Processos Vazios: São processos já finalizados, que são mantidos na memória pelo sistema operacional, para acelerar o start–up do mesmo e melhorar a performance do sistema. Estes processos são frequentemente finalizados para serem finalizados e cederem recursos aos processos em execução.

Perceba a relação com a categorização das Activities.  Uma activity ou processo em foreground, torna o status do processo que os hospedam em foreground. As activities e serviços hospedadas em um processo estando em status background, torna o status do processo em background.

Quando temos processos considerados de baixa prioridade, eles podem ser eliminados da memória em caso de necessidade, por exemplo, por falta de espaço. Isso é feito pelo Oom Handling, que é um controlador de memória do sistema operacional responsável por encerrar processos caso verifique que a memória que esta disponível esteja abaixo do valor mínimo aceitável. Outro detalhe é que a entrada no manifesto para cada tipo de elemento componente da aplicação – , , e – suporta um atributo android:process que pode especificar o processo no qual o componente deverá rodar.

Deixe um comentário

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair /  Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair /  Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair /  Alterar )

Conectando a %s