2009-11-17 2 views

답변

7

비트를 단일 원자 연산으로 테스트하고 수정하는 것을 의미하는 경우 비트 테스트 명령어 (BT, BTS, BTR 및 BTC)는 모두 LOCK 접두어를 사용하여 원자 단위로 만들 수 있습니다.

원자 단위로 테스트하고 원자 단위로 별도의 연산을 설정하는 경우 표준 원자 읽기를 사용하여 비트를 테스트하고 LOCK OR, LOCK AND LOCK XOR 명령어를 사용하여 비트를 수정할 수 있습니다 .

더 복잡한 것이 필요한 경우 한 비트를 테스트 한 다음 다른 비트를 설정하면 재시도 루프에서 표준 비교 및 ​​스왑 CMPXCHG 명령어를 사용해야합니다.

관련 문제