public override void ExecuteBefore() { var lockTaken = false; var timeout = TimeSpan.FromMilliseconds(0.0); if (GetParameter(1) is int) { timeout = TimeSpan.FromMilliseconds((int)GetParameter(1)); } if (GetParameter(1) is TimeSpan) { timeout = (TimeSpan)GetParameter(1); } MonitorEnhancements.TryEnter(GetParameter(0), timeout, ref lockTaken); if (GetParameter(1) is bool) { ModifyParameter(1, lockTaken); } Result = lockTaken; }
public override void ExecuteBefore() { var lockTaken = false; MonitorEnhancements.TryEnter(GetParameter(0), TimeSpan.FromMilliseconds(0.0), ref lockTaken); Result = lockTaken; }
public override void ExecuteBefore() { var lockTaken = false; MonitorEnhancements.Enter(GetParameter(0), ref lockTaken); ModifyParameter(1, lockTaken); }
public MonitorWrapper(object lockObject) { _lockObject = lockObject; var lockTaken = false; MonitorEnhancements.Enter(lockObject, ref lockTaken); }
protected virtual void Dispose(bool disposing) { if (!disposed) { if (disposing) { MonitorEnhancements.Exit(_lockObject); } } }
public override void ExecuteBefore() { MonitorEnhancements.Exit(GetParameter(0)); }