Timespan (Java SE 23 & JDK 23)
Description: declaration: module: jdk.jfr, package: jdk.jfr, annotation type: Timespan
Keywords: jdk.jfr.Timespan class

# Annotation Interface Timespan

@Retention(RUNTIME) @Target({FIELD,TYPE,METHOD}) public @interface Timespan
Event field annotation, specifies that the value is a duration.

If the annotated value equals `Long.MAX_VALUE`, it represents forever.

Since:
  9

- ## Field Summary

  Fields
  Modifier and Type
  Field
  Description
  `static final String`
  `MICROSECONDS`
  Unit for microseconds.
  `static final String`
  `MILLISECONDS`
  Unit for milliseconds.
  `static final String`
  `NANOSECONDS`
  Unit for nanoseconds.
  `static final String`
  `SECONDS`
  Unit for seconds.
  `static final String`
  `TICKS`
  Unit for ticks.

- ## Optional Element Summary

  Optional Elements
  Modifier and Type
  Optional Element
  Description
  `String`
  `value`
  Returns the unit of measure for the time span.

- ## Field Details

  - ### TICKS

    static final String TICKS
    Unit for ticks.
    See Also:
      - Constant Field Values

  - ### SECONDS

    static final String SECONDS
    Unit for seconds.
    See Also:
      - Constant Field Values

  - ### MILLISECONDS

    static final String MILLISECONDS
    Unit for milliseconds.
    See Also:
      - Constant Field Values

  - ### NANOSECONDS

    static final String NANOSECONDS
    Unit for nanoseconds.
    See Also:
      - Constant Field Values

  - ### MICROSECONDS

    static final String MICROSECONDS
    Unit for microseconds.
    See Also:
      - Constant Field Values

- ## Element Details

  - ### value

    String value
    Returns the unit of measure for the time span.

    By default, the unit is nanoseconds.

    Returns:
      the time span unit, default `NANOSECONDS`, not `null`
    Default:
      `"NANOSECONDS"`