Как стать автором
Обновить
4
0

Пользователь

Отправить сообщение

Вызов ApplicationContext.getBean() это не Инверсия Контроля! Несмотря на то, что по-прежнему легко изменить реализацию, настроенную для заданного имени компонента, класс теперь напрямую полагается на Spring для предоставления этой зависимости и не может получить ее каким-либо другим способом. Вы не можете просто сделать свою собственную имитацию реализации в тестовом классе и передать ее ему самостоятельно. Это, по сути, противоречит цели Spring как контейнера для внедрения зависимостей.

Если кратко то ваш вариант это костыль.

Добрый день, компилятор в реализации виртуальной машины Java может изменить порядок кода или процессора. Кроме того, иерархия памяти архитектуры, на которой выполняется реализация виртуальной машины Java, может создавать впечатление, что код переупорядочивается.

В вашем случае скорее всего проблема в том, что JMV делает reordering и thread3.start() выполняется первым.

Пишите коментарии или дополнения!

Информация

В рейтинге
Не участвует
Зарегистрирован
Активность

Специализация

Бэкенд разработчик, Веб-разработчик
Средний
Java
Java Spring Framework
Apache Kafka
Hibernate
PostgreSQL
Базы данных
SQL
Docker
Высоконагруженные системы
Linux