728x90 반응형 volatile1 C# 변수 동기화 키워드 : volatile volatile 변수의 값을 캐시에 저장하지 않고 항상 메모리에서 값을 읽어오도록 한다. 멀티 스레딩 환경에서 여러 스레드가 동시에 하나의 변수에 접근할 때 캐시에 저장된 값과 메모리의 실제 값이 일치하지 않아서 오류가 발생할 수 있다. int counter = 0; void IncrementCounter() { for (int i = 0; i < 100000; i++) { counter++; } } void DecrementCounter() { for (int i = 0; i < 100000; i++) { counter--; } } void Main() { Thread t1 = new Thread(IncrementCounter); Thread t2 = new Thread(DecrementCounter).. 2023. 4. 25. 이전 1 다음 728x90 반응형