小巧、快速、可靠。
選擇其中三項。

SQLite C 介面

狀態參數

#define SQLITE_STATUS_MEMORY_USED          0
#define SQLITE_STATUS_PAGECACHE_USED       1
#define SQLITE_STATUS_PAGECACHE_OVERFLOW   2
#define SQLITE_STATUS_SCRATCH_USED         3  /* NOT USED */
#define SQLITE_STATUS_SCRATCH_OVERFLOW     4  /* NOT USED */
#define SQLITE_STATUS_MALLOC_SIZE          5
#define SQLITE_STATUS_PARSER_STACK         6
#define SQLITE_STATUS_PAGECACHE_SIZE       7
#define SQLITE_STATUS_SCRATCH_SIZE         8  /* NOT USED */
#define SQLITE_STATUS_MALLOC_COUNT         9

這些整數常數指定了各種執行時期狀態參數,可以透過 sqlite3_status() 返回。

SQLITE_STATUS_MEMORY_USED
此參數是目前使用 sqlite3_malloc() 直接或間接檢出的記憶體量。 該數字包含應用程式呼叫 sqlite3_malloc() 以及 SQLite 函式庫的內部記憶體使用量。 由 SQLITE_CONFIG_PAGECACHE 控制的輔助頁面快取記憶體不包含在此參數中。 返回的數量是 sqlite3_mem_methods 中 xSize 方法所報告的分配大小的總和。

SQLITE_STATUS_MALLOC_SIZE
此參數記錄傳遞給 sqlite3_malloc()sqlite3_realloc()(或其內部等效項)的最大記憶體分配請求。 只有 sqlite3_status() 中 *pHighwater 參數返回的值是有意義的。 寫入 *pCurrent 參數的值未定義。

SQLITE_STATUS_MALLOC_COUNT
此參數記錄目前檢出的個別記憶體分配的數量。

SQLITE_STATUS_PAGECACHE_USED
此參數返回使用 SQLITE_CONFIG_PAGECACHE 配置的 頁面快取記憶體分配器 中已使用的頁面數量。 返回的值是以頁面為單位,而不是以位元組為單位。

SQLITE_STATUS_PAGECACHE_OVERFLOW
此參數返回頁面快取分配的位元組數,這些分配無法由 SQLITE_CONFIG_PAGECACHE 緩衝區滿足,並且被迫溢出到 sqlite3_malloc()。 返回的值包括因為太大(大於 SQLITE_CONFIG_PAGECACHE 的「sz」參數)而溢出的分配,以及因為頁面快取中沒有剩餘空間而溢出的分配。

SQLITE_STATUS_PAGECACHE_SIZE
此參數記錄傳遞給 頁面快取記憶體分配器 的最大記憶體分配請求。 只有 sqlite3_status() 中 *pHighwater 參數返回的值是有意義的。 寫入 *pCurrent 參數的值未定義。

SQLITE_STATUS_SCRATCH_USED
已不再使用。

SQLITE_STATUS_SCRATCH_OVERFLOW
已不再使用。

SQLITE_STATUS_SCRATCH_SIZE
已不再使用。

SQLITE_STATUS_PARSER_STACK
*pHighwater 參數記錄最深的剖析器堆疊深度。 *pCurrent 值未定義。 只有在使用 YYTRACKMAXSTACKDEPTH 編譯 SQLite 時,*pHighwater 值才有意義。

新的狀態參數可能會不時新增。

另請參閱 物件常數函式 列表。