Встречается на собеседованиях • сегодня
Как получить строку из Future
Для получения строки из `Future` в Java можно использовать методы `get()` или `get(long timeout, TimeUnit unit)`. Однако `get()` блокирует поток до завершения Future, что может привести к deadlock. Лучше использовать асинхронные подходы через `CompletableFuture`:
```java
Future future = executor.submit(() -> "Hello");
String result = future.get(); // блокирующий вызов
```
Или с таймаутом:
```java
String result = future.get(1, TimeUnit.SECONDS);
```
Современный подход с `CompletableFuture`:
```java
CompletableFuture.supplyAsync(() -> "Hello")
.thenAccept(result -> System.out.println(result));
```
Важно обрабатывать возможные исключения:
- `InterruptedException` - если поток был прерван
- `ExecutionException` - если задача завершилась с ошибкой
- `TimeoutException` - при истечении таймаута

Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы