2010-02-14 2 views

답변

2

아니요. 개체에 대한 액세스를 직접 동기화해야합니다. 32 비트 플랫폼에서 32 비트 값을 개별적으로 읽거나 쓰는 것은 원하지만 개체에 대한 업데이트가 스레드로부터 안전함을 의미하지는 않습니다.

동기화가 약간의 오버 헤드를 추가하기 때문에 모든 개체에이 기능을 추가하면 전반적인 성능이 크게 저하 될 수 있습니다.

4

아니요, 스레드 안전성이 보장되지 않습니다. 예를 들어 참조 유형 인스턴스 (단순 뮤텍스 기능)에 lock 키워드를 사용할 수 있습니다. language specification은 잠금없이 원자가되는 작업을 정의합니다.

새로운 .NET 4에는 이제 ConcurrentBag과 같은 스레드 안전 클래스가 포함되어있어 잠금에 신경 쓰지 않고도 코드를 쉽게 작성할 수 있습니다.