(스프링) Ioc컨테이너와 DI
<IOC 컨테이너를 통해 애플리케이션이 만들어지는 방식>
결국 스프링 애플리케이션이란, POJO클래스와 설정 메타정보를 이용해 IOC 컨테이너가 만들어주는 오브젝트의 조합이다.RootBeanDefinition을 보면 bean클래스가 private volatile Object beanClass;
로 되어있는 것을 볼 수 있다.
이는 volatile을 선언하게 되면 cpu cache에 해당 값을 저장하는 과정 없이 오직
MainMemory에서 값을 읽고, 쓰는 과정을 거친다.
즉, 멀티쓰레드에서 한개의 쓰레드가 read&write를 하더라도 다른 쓰레드에서 읽기를 하는 경우 값이 변하더라도 항상 일관된 값을 유지하게 해준다.
댓글
댓글 쓰기