Sync
&T
가 여러 스레드에서 안전하게 접근될 수 있다면,&T
의 타입은Sync
입니다.
좀 더 정확한 정의는 다음과 같습니다:
&T
가Send
인 경우에만T
의 타입이Sync
가 됩니다
위 문장을 풀어서 이야기 하면, 어떤 타입이 스레드 간에 공유되어서 사용되기에 안전하다면 그 타입의 참조 타입은 스레드 간에 이동 가능하다는 것입니다.
이는 다음과 같이 증명할 수 있습니다: 어떤 타입이 Sync
라는 말은 곧 그 타입이 여러 스레드들 사이에서 데이터 레이스나 여타 동기화 문제 없이 공유 가능하다는 말입니다. 스레드 간 공유가 안전하다면, 스레드간 이동도 안전할 수 밖에 없습니다. 어떤 타입의 스레드간 이동이 안전하다면, 그 타입의 참조 또한 스레드간 이동이 안전할 수 밖에 없습니다.