싱글톤
-
static 키워드 정복하기Programming🧑💻 2025. 3. 25. 21:08
Swift에서 static 키워드는 "프로퍼티를 인스턴스가 아닌 타입 레벨로 올림으로써 타입 내에서 공유하는 속성,기능을 만들 수 있게 해 준다. " 라고 이해하고 있었으며 주로 싱글톤 패턴이나 타입 메서드를 구현할 때 사용했습니다. 따라서 static 키워드를 "타입 레벨의 동작을 지원하기 위해 만들어진 녀석이구나" 정도로 이해하고 있었습니다. 근데 thread-safe 코드 작성에 대해 살펴보기에 앞서 thread-unsafe 한 경우가 무엇이 있는지에 대해 보고 있던 와중에 "정적 지역 변수는 함수 내에 있더라도 data 영역에 저장이 되며 함수의 반환 이후에도 함수의 상태를 기억한다. 즉 여러 쓰레드에서 접근이 가능한 공유 자원으로 취급되기 때문에 주의가 필요하다." 라는 구절을 읽었습니다.그..