Sync — 스레드 간 공유 안전 마커 트레잇
Sync — 스레드 간 공유 안전 마커 트레잇
Sync는 타입의 값이 스레드 간에 안전하게 공유(참조 사용)될 수 있음을 나타내는 마커 트레잇이에요.
출처: Rust 공식 문서
본문
pub unsafe auto trait Sync { }
타입 T가 Sync라는 것은 &T가 스레드 간에 안전하게 공유될 수 있다는 뜻이에요. T: Sync는 &T: Send와 동치예요. Rc<T>, RefCell<T>, Cell<T> 같은 타입은 Sync가 아니에요.
Mutex<T>나 Arc<T> 같은 동기화 타입은 T: Send일 때 Sync예요. Sync는 자동 트레잇이에요.