Как лучше всего организовывать выполнение асинхронного кода в Java

Всем привет!

У меня есть насущный вопрос: как лучше всего запускать асинхронный код в Java?
Я знаю, что в Java существует огромное количество способов запуска кода в другом потоке.
Самый низкоуровневый из них такой:

    new Thread(new Runnable() {

        @Override
        public void run() {
            System.out.println("Hello, world!");
        }

    }).start();

Я слышал из многих источников, что такой способ запуска является нерекомендуемым и есть более современное API и т.д.
В своих странствиях по Интернету находил огромное количество способов запуска, но так и не понял какой из них наиболее рекомендуемый и почему.

Буду рад любым способам. Можно использовать и советовать любые библиотеки и использовать Spring Framework (у него тоже есть всякие TaskScheduler и т.д.)


Ответы (0 шт):