복습 Race Condition (경합 조건): 여러 쓰레드가 동일한 메모리에 동시 접근할 때 발생. write가 문제임. Undefined Behavior가 발생함. 해결법 : Lock, Atomic C++이 보증하는 기본 원칙 : atomic 연산에 한해 모든 쓰레드가 동일 객체에 대해 동일한 수정 순서를 관찰한다. 이게 무슨 소리인가? atomic 연산 동일 객체란 그냥 하나의 메모리 공간, 변수 쯤으로 생각하면 된다. 동일한 수정 순서란 atomic:: is_lock_free() //lock을 걸 필요 없음(원자적으로 수정됨) true : 원자적 수정. false : 원자적 수정 안됨. atomic의 메모리 정책 메모리 정책에 따라 가시성, 코드 재배치 문젲가 해결되거나 안되거나가 결정됨. 메모리..