Как выполнить код в параллельном, отличном от основного, потоке?

Используя один из следующих механизмов:

Короткий ответ

Что ответить на собеседовании

Используя один из следующих механизмов:

Подробный разбор

Ответ с пояснениями

Используя один из следующих механизмов:

  • Kotlin Coroutines: Легковесный, асинхронный фреймворк для совместного выполнения.

    GlobalScope.launch {
        // Код, выполняющийся в параллельном потоке
    }
    
  • Java Executor / ExecutorService: Управление пулом потоков.

    ExecutorService executor = Executors.newSingleThreadExecutor();
    executor.execute(new Runnable() {
        @Override
        public void run() {
            // Код, выполняющийся в параллельном потоке
        }
    });
    
  • Класс Thread: Создание и управление отдельным потоком.

    new Thread(new Runnable() {
        @Override
        public void run() {
            // Код, выполняющийся в параллельном потоке
        }
    }).start();
    
  • Класс AsyncTask (менее предпочтительно в современных приложениях): Упрощенный механизм для выполнения операций в фоновом потоке и обновления UI.

    new AsyncTask<Void, Void, Void>() {
        @Override
        protected Void doInBackground(Void... voids) {
            // Код, выполняющийся в параллельном потоке
            return null;
        }
    }.execute();
    

Практика в реальном времени

Подготовьтесь к следующему собеседованию

Interview Boost учитывает вакансию, резюме и технологии и помогает сформулировать ответ прямо во время интервью.

Начать подготовку