Что такое процесс в Kotlin

«Что такое процесс в Kotlin» — вопрос из категории Coroutines и Flow, который задают на 23% собеседований Android Разработчик. Ниже — развёрнутый ответ с разбором ключевых моментов.

Ответ

Процесс в Kotlin (и Android) — это изолированное окружение, в котором выполняется приложение. Каждое приложение запускается в собственном процессе с отдельной виртуальной машиной (VM) и выделенной памятью.

Особенности:

  • По умолчанию все компоненты приложения работают в одном процессе.
  • Можно указать отдельный процесс для компонента в AndroidManifest.xml:
<activity android:name=".SecondActivity" android:process=":second_process"/>  
  • : — приватный процесс (только для приложения), имя без : — глобальный (может быть общим для нескольких приложений).
  • Межпроцессное взаимодействие (IPC) осуществляется через Binder, AIDL или Messenger.

Пример:

// Проверка текущего процесса  
if (packageName != getProcessName()) {  
    // Код выполняется в другом процессе  
}