>  기사  >  백엔드 개발  >  C#에서 모니터와 잠금의 차이점은 무엇입니까?

C#에서 모니터와 잠금의 차이점은 무엇입니까?

王林
王林앞으로
2023-09-08 21:13:07728검색

C#에서 모니터와 잠금의 차이점은 무엇입니까?

모니터와 잠금 장치 모두 개체 액세스를 동기화하는 메커니즘을 제공합니다. lock은 Monitor.Enter의 단축키입니다. 그리고 마지막으로 시도해 보세요.

잠금은 기본 사용법에 대한 단축키이자 옵션입니다. 더 많은 제어가 필요한 경우 고급 멀티스레딩 솔루션을 위해 TryEnter(), Wait(), Pulse() 및 &를 사용하세요. PulseAll() 메서드를 사용하는 경우 Montior 클래스를 선택하세요.

잠금 예시 -

Example

class Program{
static object _lock = new object();
static int Total;
public static void Main(){
   AddOneHundredLock();
   Console.ReadLine();
}
public static void AddOneHundredLock(){
   for (int i = 1; i <= 100; i++){
      lock (_lock){
         Total++;
      }
   }
}

모니터 예시

Example

class Program{
   static object _lock = new object();
   static int Total;
   public static void Main(){
      AddOneHundredMonitor();
      Console.ReadLine();
   }
   public static void AddOneHundredMonitor(){
      for (int i = 1; i <= 100; i++){
         Monitor.Enter(_lock);
         try{
            Total++;
         }
         finally{
            Monitor.Exit(_lock);
         }
      }
   }
}

위 내용은 C#에서 모니터와 잠금의 차이점은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 tutorialspoint.com에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제