public RecordValueWithExpectedInterval ( long value, long expectedIntervalBetweenValueSamples ) : void | ||
value | long | The value to record |
expectedIntervalBetweenValueSamples | long | If |
Результат | void |
/// <summary> /// Record a value in the histogram. /// </summary> /// <param name="value">The value to record</param> /// <param name="expectedIntervalBetweenValueSamples">If <paramref name="expectedIntervalBetweenValueSamples"/> is larger than 0, add auto-generated value records as appropriate if <paramref name="value"/> is larger than <paramref name="expectedIntervalBetweenValueSamples"/></param> /// <exception cref="System.IndexOutOfRangeException">if value is exceeds highestTrackableValue</exception> /// <remarks> /// To compensate for the loss of sampled values when a recorded value is larger than the expected interval between value samples, /// Histogram will auto-generate an additional series of decreasingly-smaller (down to the expectedIntervalBetweenValueSamples) value records. /// <para> /// Note: This is a at-recording correction method, as opposed to the post-recording correction method provided by currently unimplemented <c>CopyCorrectedForCoordinatedOmission</c> method. /// The two methods are mutually exclusive, and only one of the two should be be used on a given data set to correct for the same coordinated omission issue. /// </para> /// See notes in the description of the Histogram calls for an illustration of why this corrective behavior is important. /// </remarks> public void RecordValueWithExpectedInterval(long value, long expectedIntervalBetweenValueSamples) { var criticalValueAtEnter = _recordingPhaser.WriterCriticalSectionEnter(); try { _activeHistogram.RecordValueWithExpectedInterval(value, expectedIntervalBetweenValueSamples); } finally { _recordingPhaser.WriterCriticalSectionExit(criticalValueAtEnter); } }