COW (Copy-on-write)

쓰기 시 복사


Swift에서의 Copy-on-write

Swift에서는 값 타입의 복사 시에 COW 작업이 이루어진다.

👉 즉 처음 값 복사 시에는 참조만 하고 있다가, 둘 중 한 곳에서 수정이 생기면 그때 실제로 값이 복사되어 서로 다른 값을 바라보게 되는 것이다.

코드로 확인

코드를 통해 실제 메모리 주소값을 확인해보면 다음과 같다.