Встречается на собеседованиях • сегодня

Помнишь ли как работать с Multithreading

В Java multithreading реализуется через класс Thread или интерфейс Runnable. Основные концепции:

  • Создание потока:
java
Thread thread = new Thread(() -> System.out.println("Running"));
thread.start();
  • Синхронизация: используй synchronized блоки или методы для thread-safety:
java
synchronized (this) {
    // critical section
}
  • Потокобезопасные коллекции: ConcurrentHashMap, CopyOnWriteArrayList.
  • Executors: для управления пулами потоков:
java
ExecutorService executor = Executors.newFixedThreadPool(4);
executor.submit(() -> task());
  • Проблемы: race conditions, deadlocks, livelocks.

Важно понимать happens-before, volatile, атомарные классы (AtomicInteger). Для сложных сценариев — CompletableFuture или ForkJoinPool.

Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы