Esempio n. 1
0
            static void DoThreadOne(VaultType bmv, StartToken tkn)
            {
                HpTimeStamps.TimeStampSource.Calibrate();
                while (!tkn.IsSet)
                {
                }

                using var lck = bmv.Lock();
                Thread.Sleep(TimeSpan.FromMilliseconds(750));
                lck.Value += "Hi mom!";
            }
Esempio n. 2
0
 static void DoThreadTwo(VaultType bv, StartToken tkn, ExceptionReceptor receptor)
 {
     HpTimeStamps.TimeStampSource.Calibrate();
     while (!tkn.IsSet)
     {
     }
     Thread.Sleep(TimeSpan.FromMilliseconds(250));
     try
     {
         using var lck = bv.Lock(TimeSpan.FromMilliseconds(10));
         receptor.SetBadException();
     }
     catch (TimeoutException ex)
     {
         receptor.SupplyExceptionOrThrow(ex);
     }
     catch (Exception rx)
     {
         receptor.SupplyExceptionOrThrow(rx);
     }
 }