Documentation

Overview

    Package contention provides facilities for detecting system contention.

    Index

    Constants

    This section is empty.

    Variables

    This section is empty.

    Functions

    This section is empty.

    Types

    type TimeoutDetector

    type TimeoutDetector struct {
    	// contains filtered or unexported fields
    }

      TimeoutDetector detects routine starvations by observing the actual time duration to finish an action or between two events that should happen in a fixed interval. If the observed duration is longer than the expectation, the detector will report the result.

      func NewTimeoutDetector

      func NewTimeoutDetector(maxDuration time.Duration) *TimeoutDetector

        NewTimeoutDetector creates the TimeoutDetector.

        func (*TimeoutDetector) Observe

        func (td *TimeoutDetector) Observe(which uint64) (bool, time.Duration)

          Observe observes an event for given id. It returns false and exceeded duration if the interval is longer than the expectation.

          func (*TimeoutDetector) Reset

          func (td *TimeoutDetector) Reset()

            Reset resets the NewTimeoutDetector.