c++, java, c# 스레드 예제 보면서 

상호배제는 하는데 캐시단까지 신경을 쓰는건 못봐서 실문드립니다.



컴구조때 레지스터와 메모리사이에 캐시가 있고, 멀티코어 때문에 캐시 불일치가 있을 수 있잖아요.

그래서 OS나 로우레벨 단에서는 캐시 일치시키는 작업을 하잖아요


근데 언어단에서는 캐시 불일치를 신경 안써도 되나여?



아래 Java와 cpp로 2개의 스레드가 공용변수를 10씩 올리는걸 짰는데

20이 나온다는게 100%보장이 되나요?