위한 CompareAndSwap 구현 원자 조작 CompareAndExchange 만 int
, long
, double
과 참조 타입에 대해 정의된다. 하지만 bool
유형의 경우 CompareAndExchange가 필요합니다. bool
에 대해 CompareAndSwap
을 어떻게 구현할 수 있습니까?.NET 프레임 워크 BOOL
4
A
답변
4
당신은 래퍼 부울 값을 정의하며, 다음과 같이 T where T : class
의 CompareExchange
과부하를 사용할 수 있습니다
private static object TrueObj = true;
private static object FalseObj = false;
...
object val = TrueObj;
object result = Interlocked.CompareExchange(ref val, TrueObj, FalseObj);
if (val == FalseObj) { // Alternatively you could use if (!(bool)val) ...
...
}
0
dablinkenlight의 접근 방식에 대한 대안이 0
이 false
입니다 Int32
과부하 및 0이 아닌를 사용하는 것 값은 true
입니다.
관련 문제
- 1. .NET 프레임 워크 문제?
- 2. 가상화 .NET 프레임 워크
- 3. .NET 로깅 프레임 워크
- 4. .Net 프레임 워크 찾기
- 5. .net 프레임 워크/아키텍처
- 6. .NET 배포 프레임 워크
- 7. .NET 엔터티 프레임 워크
- 8. .NET 마이크로 프레임 워크 자습서?
- 9. Rhinopython 및 .NET 프레임 워크
- 10. EFProf .NET 프레임 워크 4.5
- 11. 감지 .NET 프레임 워크 윈도우
- 12. .NET 용 캐싱 프레임 워크
- 13. .NET 프레임 워크 TimeZoneInfo.utc 속성
- 14. .NET 마이크로 프레임 워크 반올림
- 15. .NET 용 NLP 프레임 워크
- 16. .NET 프레임 워크 3.5 위치
- 17. .NET 프레임 워크 : 새로운 기능
- 18. .Net Reflection.Emit 단순화를위한 프레임 워크?
- 19. 정규 표현식 $ .net 프레임 워크
- 20. .NET 프레임 워크 방법은'무효 System.GC.Collect '
- 21. .Net 1.1 프레임 워크 컨테이너
- 22. .NET 용 보안 프레임 워크
- 23. 프레임 워크
- 24. .net 프레임 워크 2를 .net 프레임 워크 4에서 개발 한 응용 프로그램에서 호출
- 25. .NET Framework 3.5에서 사용하는 프레임 워크 버전
- 26. Windows XP에서 "선적 된".NET 프레임 워크
- 27. .NET 프레임 워크 - 4.0의 기능보다 나은 3.0
- 28. ADO .NET 엔티티 프레임 워크 상속 모델링
- 29. 좋아하는 .NET 단위 테스트 프레임 워크
- 30. OPF3 (.NET 용 ORM 프레임 워크) 평가
니스. 내가 당신의 접근 방식에 대해 정말로 좋아하는 것은 단 한 번의 복싱 비용 만 있다는 것입니다. – Steven