2009-12-16 2 views

답변

1

C를 가정 : 예,하지만 당신은 (인터럽트는 기본적으로 다른 스레드) 컴파일러는 그 값이 두 개 이상의 스레드에서 변경할 수 있습니다 알려 휘발성 변수 WTH 키워드를 표시해야합니다.

+0

멀티 프로세서 시스템에 있거나 변수가 여러 ISR에서 액세스되는 경우 이러한 변수에 액세스 할 때 어떤 종류의 잠금/원자 적 연산이 가능할 수 있습니다. – nos

+0

@nos : 주석을 자세히 작성해 주시겠습니까? – wrapperm

+0

@nos는 스레드 안전성에 대해 이야기합니다. 주 ISR과 ISR이 변수 x를 공유한다면 이것을 고려하십시오. 주 변수가이 변수를 변경하고이를 원자 적으로 변경할 수없는 경우 ISR이 주 변수의 절반을 변경하는 동안 ISR이 발생하면 ISR이 돌아 오면 주 변수 값이 왜곡됩니다. ISR이있는 임베디드 시스템의 경우 재진입 성 및 스레드 안전성과 같은 키워드를 확인하십시오 (여기에는 스레드가 없지만 ISR은 유사합니다). – foresightyj