В каких случаях вы бы использовали @Async?

Аннотация @Async в Spring позволяет выполнять методы асинхронно, то есть в отдельном потоке, не блокируя основной поток выполнения.

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

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

Аннотация @Async в Spring позволяет выполнять методы асинхронно, то есть в отдельном потоке, не блокируя основной поток выполнения. Для её использования нужно включить поддержку асинхронности через @EnableAsync в конфигурации.

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

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

Аннотация @Async в Spring позволяет выполнять методы асинхронно, то есть в отдельном потоке, не блокируя основной поток выполнения. Для её использования нужно включить поддержку асинхронности через @EnableAsync в конфигурации.

Пример:

@Service
public class MyService {

    @Async
    public CompletableFuture<String> asyncMethod() {
        // Долгая операция
        return CompletableFuture.completedFuture("Результат");
    }
}

При вызове asyncMethod() выполнение продолжится сразу, а метод выполнится в другом потоке. Это удобно для задач, которые не требуют немедленного результата, например, отправка email или обработка данных в фоне.

ИИ-помощник для собеседований

Хочешь уверенно проходить собеседования?

Попробуй ИИ-помощник для собеседований: слышит вас и собеседника, анализирует экран, подсказывает ответы в реальном времени, работает без VPN и не попадает в захват экрана.

Подробнее