CloudCastle Clock API

Stopwatch
in package

FinalYes

Секундомер на монотонном таймере.

Измеряет длительности независимо от перевода системных часов: hrtime() гарантирует монотонность. Внутреннее состояние хранится в целых наносекундах — деление до секунд происходит только на выдаче. Поддерживает промежуточные отметки (круги) и повторную остановку без потери результата.

Table of Contents

Methods

elapsed()  : TimeSpan
Прошедшее время как длительность пакета.
elapsedMilliseconds()  : float
Прошедшее время в миллисекундах.
elapsedSeconds()  : float
Прошедшее время: до остановки — растёт, после — зафиксировано.
isRunning()  : bool
Идёт ли отсчёт.
lap()  : float
Зафиксировать круг: длительность с предыдущей отметки.
laps()  : array<int, array{label: string|null, seconds: float}>
Зафиксированные круги в порядке добавления.
measure()  : float
Замерить длительность выполнения колбэка.
start()  : self
Запустить новый секундомер.
stop()  : float
Остановить секундомер; повторная остановка возвращает прежний результат.

Methods

elapsed()

Прошедшее время как длительность пакета.

public elapsed() : TimeSpan
Return values
TimeSpan —

Прошедшее время как длительность пакета

elapsedMilliseconds()

Прошедшее время в миллисекундах.

public elapsedMilliseconds() : float
Return values
float —

Прошедшее время в миллисекундах

elapsedSeconds()

Прошедшее время: до остановки — растёт, после — зафиксировано.

public elapsedSeconds() : float
Return values
float —

Прошедшее время: до остановки — растёт, после — зафиксировано

isRunning()

Идёт ли отсчёт.

public isRunning() : bool
Return values
bool —

Идёт ли отсчёт

lap()

Зафиксировать круг: длительность с предыдущей отметки.

public lap([string|null $label = null ]) : float
Parameters
$label : string|null = null

необязательная метка круга

Return values
float —

длительность круга в секундах

laps()

Зафиксированные круги в порядке добавления.

public laps() : array<int, array{label: string|null, seconds: float}>
Return values
array<int, array{label: string|null, seconds: float}>

measure()

Замерить длительность выполнения колбэка.

public static measure(callable(): mixed $callback) : float

Замер на монотонном таймере; исключение колбэка пробрасывается как есть.

Parameters
$callback : callable(): mixed

выполняемый код

Return values
float —

длительность выполнения в секундах

start()

Запустить новый секундомер.

public static start() : self
Return values
self

stop()

Остановить секундомер; повторная остановка возвращает прежний результат.

public stop() : float
Return values
float —

полная длительность в секундах

On this page

Search results