명령 재정렬 문제는 휘발성 키워드의 사용으로 인한 문제를 해결

먼저 다음 코드를 보면 :

지침과 최적화 된 코드를 재 배열하면 다음과 후 :
(! STOP)에 묻 으면
그동안은 ( 는 true ) {}
휘발성 복수의 thread가 동시에 쓰기 작업이있는 경우 가장 적합한 스레드가 쓰기이며, 기회는 여전히 잠금 장치의 사용을 다른 스레드를 필요로 읽거나 스레드 안전 용기 또는 대신 원자 변수.

변수가 휘발성 선언 할 때, 다음과 같은 두 가지 특징이있을 것이다.
· 스레드 가시성 : 스레드 수정에 관계없이 잠금이 다른 스레드를 최신 변경 사항을 볼 수 있는지 여부의 휘발성 변수를 수정하면 평균 변수가이 작업을 수행 할 수있다.
최적화를 재정렬 금지 명령은, 일반 변수는 모든 장소 메소드의 구현에 정확한 결과를 얻을 수 있도록 할 과제의 결과에만 의존하지만, 순서는 변수의 프로그램 코드 할당의 일관된 실행을 보장 할 수 없습니다.

추천

출처www.cnblogs.com/htkj/p/10932558.html