2010-05-30 1 views

답변

56

.NET 4에는 ConcurrentDictionary 클래스가 있습니다. 당신은 .NET의 이전 버전을 사용하고 싶은해야하는 경우

스스로를 작성 :

  • 를 클래스에 개인 필드로 사전 포장
  • 별도의 private object lockObject
  • 를 사용
  • 이유 "별도의 잠금 객체를 사용",
+2

그냥 궁금 사전에 액세스 할 때마다 주위에 그 lockObject에 대한 잠금을? – MFatihMAR

+7

@MonoLightTech - 조금 이론적이지만, Dictionary 클래스 자체의 코드 또는 컬렉션을 '볼'필요가있는 외부 코드가 또한 잠금을 걸면 교착 상태가 발생할 수 있습니다. 분리 된 관심사 사용 : lockObject는 잠금 전용입니다. –