-
| 싱글톤 방식을 사용하면 하나의 객체 인스턴스를 공유하기 때문에 객체를 무상태로 설계하는 것이 중요하다고 강의에서 말씀해주셨는데, | 
Beta Was this translation helpful? Give feedback.
Replies: 1 comment 1 reply
-
| Threadlocal이란 ? ThreadLocal은 JDK 1.2부터 제공된 오래된 클래스다. 이 클래스를 활용하면 스레드 단위로 로컬 변수를 사용할 수 있기 때문에 마치 전역변수처럼 여러 메서드에서 활용할 수 있다. 다만 잘못 사용하는 경우 큰 부작용(side-effect)이 발생할 수 있기 때문에 다른 스레드와 변수가 공유되지 않도록 주의해야 한다. 멀티스레드 환경에서 싱글톤 객체를 사용할 때 주의할 점이 있습니다. 모든 스레드가 같은 인스턴스를 공유하므로 객체의 상태가 변경될 경우 다른 스레드 간에 상태가 공유되어 예기치 않은 동작이 발생할 수 있습니다. 이러한 문제를 해결하기 위해 ThreadLocal을 사용하여 싱글톤 객체의 인스턴스를 스레드별로 독립적으로 관리할 수 있습니다 참고한 곳 | 
Beta Was this translation helpful? Give feedback.
Threadlocal이란 ?
ThreadLocal은 JDK 1.2부터 제공된 오래된 클래스다. 이 클래스를 활용하면 스레드 단위로 로컬 변수를 사용할 수 있기 때문에 마치 전역변수처럼 여러 메서드에서 활용할 수 있다. 다만 잘못 사용하는 경우 큰 부작용(side-effect)이 발생할 수 있기 때문에 다른 스레드와 변수가 공유되지 않도록 주의해야 한다.
멀티스레드 환경에서 싱글톤 객체를 사용할 때 주의할 점이 있습니다. 모든 스레드가 같은 인스턴스를 공유하므로 객체의 상태가 변경될 경우 다른 스레드 간에 상태가 공유되어 예기치 않은 동작이 발생할 수 있습니다.
이러한 문제를 해결하기 위해 ThreadLocal을 사용하여 싱글톤 객체의 인스턴스를 스레드별로 독립적으로 관리할 수 있습니다
참고한 곳