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

Как реализуешь отправку и ожидание выполнения задач в ThreadPoolExecutor

В Java `ThreadPoolExecutor` можно использовать для отправки задач через методы `execute()` (для `Runnable`) или `submit()` (для `Callable`, возвращает `Future`). Пример: ```java ExecutorService executor = Executors.newFixedThreadPool(4); // Отправка Runnable executor.execute(() -> System.out.println("Task executed")); // Отправка Callable и ожидание результата Future future = executor.submit(() -> { TimeUnit.SECONDS.sleep(1); return 42; }); try { Integer result = future.get(); // Блокирующий вызов System.out.println("Result: " + result); } catch (Exception e) { e.printStackTrace(); } executor.shutdown(); ``` Ключевые моменты: 1. `submit()` возвращает `Future` для контроля выполнения 2. `get()` блокирует поток до завершения задачи 3. Можно использовать `get(timeout, unit)` для ограниченного ожидания 4. Обязательно завершать пул через `shutdown()`
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

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

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

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