예제 #1
0
 public override void Lock()
 {
     Thread caller = Thread.CurrentThread;
     lock (this)
     {
         if(GetHold(caller)) return;
     }
     WaitNode n = new WaitNode();
     n.DoWaitUninterruptibly(this);
 }