• 카테고리

    질문 & 답변
  • 세부 분야

    취업 · 이직

  • 해결 여부

    해결됨

싱글톤 패턴을 구현하는 방법중 첫번째에 관해 질문 있습니다.

24.03.14 12:13 작성 조회수 79

0

안녕하세요 큰돌님

싱글톤 패턴을 구현하는 방법중 첫번째인 단순한 메서드 호출에 관해 질문이 있습니다.

자바의 경우 단순한 메서드 호출을 통해 싱글톤 패턴 생성여부를 확인할때 멀티스레드 환경에서 인스턴스가 2개 이상 만들어질수 있다고 하셨는데

싱글스레드 기반의 자바스크립트를 사용하여 싱글톤 패턴을 구현하는경우에는 1번의 방법만으로 패턴 구현하는것이 충분한가요?

답변 1

답변을 작성해보세요.

0

안녕하세요 ㅎㅎ

자바의 경우 단순한 메서드 호출을 통해 싱글톤 패턴 생성여부를 확인할때 멀티스레드 환경에서 인스턴스가 2개 이상 만들어질수 있다고 하셨는데

싱글스레드 기반의 자바스크립트를 사용하여 싱글톤 패턴을 구현하는경우에는 1번의 방법만으로 패턴 구현하는것이 충분한가요?

>> 이부분 말씀이신가요?

class Singleton {
    constructor() {
        if (!Singleton.instance) {
            Singleton.instance = this
        }
        return Singleton.instance
    }
    getInstance() {
        return this 
    }
}
const a = new Singleton()
const b = new Singleton() 
console.log(a === b) // true 

네 맞습니다. 싱글스레드이기 때문에 이부분 만으로도 충분합니다.

다만.

자바스크립트는 Web Workers API를 통해 멀티스레딩 기능을 지원합니다. Web Workers를 사용하면 백그라운드 스레드 + 메인스레드로 작업할 수 있다는 점을 참고로 알아두세요 ㅎㅎ



또 질문 있으시면 언제든지 질문 부탁드립니다.

좋은 수강평과 별점 5점은 제게 큰 힘이 됩니다. :)

감사합니다.

강사 큰돌 올림.