blob: dca1ebd4d2cdec15bc437ce50d2f52961fc280a3 (
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
|
.Dd January 24, 2024
.Dt SQLITE3_MEMORY_USED 3
.Os
.Sh NAME
.Nm sqlite3_memory_used ,
.Nm sqlite3_memory_highwater
.Nd memory allocator statistics
.Sh SYNOPSIS
.In sqlite3.h
.Ft sqlite3_int64
.Fo sqlite3_memory_used
.Fa "void"
.Fc
.Ft sqlite3_int64
.Fo sqlite3_memory_highwater
.Fa "int resetFlag"
.Fc
.Sh DESCRIPTION
SQLite provides these two interfaces for reporting on the status of
the
.Fn sqlite3_malloc ,
.Fn sqlite3_free ,
and
.Fn sqlite3_realloc
routines, which form the built-in memory allocation subsystem.
.Pp
The
.Fn sqlite3_memory_used
routine returns the number of bytes of memory currently outstanding
(malloced but not freed).
The
.Fn sqlite3_memory_highwater
routine returns the maximum value of
.Fn sqlite3_memory_used
since the high-water mark was last reset.
The values returned by
.Fn sqlite3_memory_used
and
.Fn sqlite3_memory_highwater
include any overhead added by SQLite in its implementation of
.Fn sqlite3_malloc ,
but not overhead added by the any underlying system library routines
that
.Fn sqlite3_malloc
may call.
.Pp
The memory high-water mark is reset to the current value of
.Fn sqlite3_memory_used
if and only if the parameter to
.Fn sqlite3_memory_highwater
is true.
The value returned by sqlite3_memory_highwater(1)
is the high-water mark prior to the reset.
.Sh IMPLEMENTATION NOTES
These declarations were extracted from the
interface documentation at line 3075.
.Bd -literal
SQLITE_API sqlite3_int64 sqlite3_memory_used(void);
SQLITE_API sqlite3_int64 sqlite3_memory_highwater(int resetFlag);
.Ed
.Sh SEE ALSO
.Xr sqlite3_malloc 3
|