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; }