blob: 290ec112f667154aed1ef3f3770078c88a0a893b (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
|
=encoding UTF-8
=head1 НАЗВАНИЕ
BH_Timer - утилиты таймера
=head1 СИНТАКСИС
#include <BH/Timer.h>
cc prog.c -o prog -lbh
=head1 ОПИСАНИЕ
Этот модуль предоставляет простой интерфейс высокоточного таймера для измерения
прошедшего времени. По возможности таймер использует монотонный источник часов,
что делает его подходящим для точных измерений времени, например, профилирования
или тайм-аутов. Поддерживается точность в миллисекундах и наносекундах; таймер
можно запускать, перезапускать и запрашивать прошедшее время.
=head1 API ВЫЗОВЫ
=head2 BH_TimerNew
BH_Timer *BH_TimerNew(void);
Создаёт и инициализирует новый объект таймера.
В случае успеха функция возвращает указатель на новый объект BH_Timer,
или NULL в случае ошибки.
=head2 BH_TimerFree
void BH_TimerFree(BH_Timer *timer);
Уничтожает таймер.
=head2 BH_TimerIsMonotonic
int BH_TimerIsMonotonic(BH_Timer *timer);
Проверяет, использует ли таймер монотонный источник времени.
=head2 BH_TimerStart
void BH_TimerStart(BH_Timer *timer);
Запускает или сбрасывает таймер, начиная отсчёт с текущего момента времени.
=head2 BH_TimerRestart
int64_t BH_TimerRestart(BH_Timer *timer);
Перезапускает таймер и возвращает количество миллисекунд, прошедших с момента
его запуска.
=head2 BH_TimerMilliseconds
int64_t BH_TimerMilliseconds(BH_Timer *timer);
Возвращает количество миллисекунд, прошедших с момента запуска таймера.
=head2 BH_TimerNanoseconds
int64_t BH_TimerNanoseconds(BH_Timer *timer);
Возвращает количество наносекунд, прошедших с момента запуска таймера.
=head1 СМ. ТАКЖЕ
L<BH>
|