Встречается на собеседованиях • сегодня
Как в Spring реализовать фоновое выполнение задач вне основного потока
В Spring можно использовать аннотацию `@Async` для асинхронного выполнения методов. Для этого нужно:
1. Добавить `@EnableAsync` в конфигурационный класс:
```java
@Configuration
@EnableAsync
public class AsyncConfig {}
```
2. Пометить метод `@Async` (должен быть в Spring-бинe):
```java
@Service
public class MyService {
@Async
public void asyncMethod() {
// Логика фоновой задачи
}
}
```
Дополнительные возможности:
- Можно настроить Executor через `AsyncConfigurer`
- Для возврата результата использовать `Future` или `CompletableFuture`
- По умолчанию используется `SimpleAsyncTaskExecutor`, но лучше настроить свой ThreadPool
Пример с возвратом результата:
```java
@Async
public CompletableFuture asyncWithResult() {
return CompletableFuture.completedFuture("Result");
}
```

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