internal void UpdateEntry(long id, PipelineState status, DateTime endTime, bool skipIfLocked) { if (Monitor.TryEnter(this._syncRoot, skipIfLocked ? 0 : -1)) { try { HistoryInfo info = this.CoreGetEntry(id); if (info != null) { info.SetStatus(status); info.SetEndTime(endTime); } } finally { Monitor.Exit(this._syncRoot); } } }
internal void UpdateEntry(long id, PipelineState status, DateTime endTime, bool skipIfLocked) { using (History._trace.TraceMethod()) { if (!Monitor.TryEnter(this._syncRoot, skipIfLocked ? 0 : -1)) { return; } try { HistoryInfo entry = this.CoreGetEntry(id); if (entry == null) { return; } entry.SetStatus(status); entry.SetEndTime(endTime); } finally { Monitor.Exit(this._syncRoot); } } }