스프링 부트 동시성 (1) 썸네일형 리스트형 [스프링] 동시성에 대해 공부 좀 했습니다. 🌱동시성 동시성 문제는 멀티 쓰레드 환경에서 발생하는 문제다. 그림처럼 여러 쓰레드가 동시에 동일한 자원에 접근해서 수정을 하는 경우 발생한다. 왜냐하면 동시에 값을 수정했을 때, 각 쓰레드가 기대하던 값과는 다른 형태의 값이 들어올 가능성이 있기 때문이다. 멀티 쓰레드 환경이라고 하더라도 싱글톤 객체에 단순히 '조회'만 하는 것이라면 동시성 문제가 발생하지 않는다. 문제는 동시에 동일한 자원에 접근해서 수정을 했을 때 발생한다. 이런 동시성 문제는 지역 변수에서 발생하지 않는다. 지역 변수는 쓰레드마다 각각 다른 메모리 영역이 할당되기 때문이다. 동시성 문제가 발생하는 곳은 같은 인스턴스의 필드 또는 static 같은 공용 필드에 접근할 때 발생한다. 특히 스프링 빈 처럼 싱글톤 객체의 필드를 변경하여.. 이전 1 다음