📄 c_status_malloc_size.html
字号:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"><html><head><title>Status Parameters</title><style type="text/css">body { margin: auto; font-family: "Verdana" "sans-serif"; padding: 8px 1%;}a { color: #45735f }a:visited { color: #734559 }.logo { position:absolute; margin:3px; }.tagline { float:right; text-align:right; font-style:italic; width:240px; margin:12px; margin-top:58px;}.toolbar { font-variant: small-caps; text-align: center; line-height: 1.6em; margin: 0; padding:1px 8px;}.toolbar a { color: white; text-decoration: none; padding: 6px 12px; }.toolbar a:visited { color: white; }.toolbar a:hover { color: #80a796; background: white; }.content { margin: 5%; }.content dt { font-weight:bold; }.content dd { margin-bottom: 25px; margin-left:20%; }.content ul { padding:0px; padding-left: 15px; margin:0px; }/* rounded corners */.se { background: url(../images/se.png) 100% 100% no-repeat #80a796}.sw { background: url(../images/sw.png) 0% 100% no-repeat }.ne { background: url(../images/ne.png) 100% 0% no-repeat }.nw { background: url(../images/nw.png) 0% 0% no-repeat }</style><meta http-equiv="content-type" content="text/html; charset=UTF-8"> </head><body><div><!-- container div to satisfy validator --><a href="../index.html"><img class="logo" src="../images/SQLite.gif" alt="SQLite Logo" border="0"></a><div><!-- IE hack to prevent disappearing logo--></div><div class="tagline">Small. Fast. Reliable.<br>Choose any three.</div><table width=100% style="clear:both"><tr><td> <div class="se"><div class="sw"><div class="ne"><div class="nw"> <div class="toolbar"> <a href="../about.html">About</a> <a href="../sitemap.html">Sitemap</a> <a href="../docs.html">Documentation</a> <a href="../download.html">Download</a> <a href="../copyright.html">License</a> <a href="../news.html">News</a> <a href="http://www.sqlite.org/cvstrac/index">Developers</a> <a href="../support.html">Support</a> </div></div></div></div></div></td></tr></table> <a href="intro.html"><h2>SQLite C Interface</h2></a><h2>Status Parameters</h2><blockquote><pre>#define SQLITE_STATUS_MEMORY_USED 0#define SQLITE_STATUS_PAGECACHE_USED 1#define SQLITE_STATUS_PAGECACHE_OVERFLOW 2#define SQLITE_STATUS_SCRATCH_USED 3#define SQLITE_STATUS_SCRATCH_OVERFLOW 4#define SQLITE_STATUS_MALLOC_SIZE 5#define SQLITE_STATUS_PARSER_STACK 6#define SQLITE_STATUS_PAGECACHE_SIZE 7#define SQLITE_STATUS_SCRATCH_SIZE 8</pre></blockquote><p><b>Important:</b> This interface is <a href="../c3ref/experimental.html">experimental</a> and is subject to change without notice.</p><p>These integer constants designate various run-time status parametersthat can be returned by <a href="../c3ref/status.html">sqlite3_status()</a>.</p><p><dl><dt>SQLITE_STATUS_MEMORY_USED</dt><dd>This parameter is the current amount of memory checked outusing <a href="../c3ref/free.html">sqlite3_malloc()</a>, either directly or indirectly. Thefigure includes calls made to <a href="../c3ref/free.html">sqlite3_malloc()</a> by the applicationand internal memory usage by the SQLite library. Scratch memorycontrolled by <a href="../c3ref/c_config_getmalloc.html">SQLITE_CONFIG_SCRATCH</a> and auxiliary page-cachememory controlled by <a href="../c3ref/c_config_getmalloc.html">SQLITE_CONFIG_PAGECACHE</a> is not included inthis parameter. The amount returned is the sum of the allocationsizes as reported by the xSize method in <a href="../c3ref/mem_methods.html">sqlite3_mem_methods</a>.</dd></p><p><dt>SQLITE_STATUS_MALLOC_SIZE</dt><dd>This parameter records the largest memory allocation requesthanded to <a href="../c3ref/free.html">sqlite3_malloc()</a> or <a href="../c3ref/free.html">sqlite3_realloc()</a> (or theirinternal equivalents). Only the value returned in the*pHighwater parameter to <a href="../c3ref/status.html">sqlite3_status()</a> is of interest.The value written into the *pCurrent parameter is undefined.</dd></p><p><dt>SQLITE_STATUS_PAGECACHE_USED</dt><dd>This parameter returns the number of pages used out of the<a href="../malloc.html#pagecache">pagecache memory allocator</a> that was configured using<a href="../c3ref/c_config_getmalloc.html">SQLITE_CONFIG_PAGECACHE</a>. Thevalue returned is in pages, not in bytes.</dd></p><p><dt>SQLITE_STATUS_PAGECACHE_OVERFLOW</dt><dd>This parameter returns the number of bytes of page cacheallocation which could not be statisfied by the <a href="../c3ref/c_config_getmalloc.html">SQLITE_CONFIG_PAGECACHE</a>buffer and where forced to overflow to <a href="../c3ref/free.html">sqlite3_malloc()</a>. Thereturned value includes allocations that overflowed because theywhere too large (they were larger than the "sz" parameter to<a href="../c3ref/c_config_getmalloc.html">SQLITE_CONFIG_PAGECACHE</a>) and allocations that overflowed becauseno space was left in the page cache.</dd></p><p><dt>SQLITE_STATUS_PAGECACHE_SIZE</dt><dd>This parameter records the largest memory allocation requesthanded to <a href="../malloc.html#pagecache">pagecache memory allocator</a>. Only the value returned in the*pHighwater parameter to <a href="../c3ref/status.html">sqlite3_status()</a> is of interest.The value written into the *pCurrent parameter is undefined.</dd></p><p><dt>SQLITE_STATUS_SCRATCH_USED</dt><dd>This parameter returns the number of allocations used out of the<a href="../malloc.html#scratch">scratch memory allocator</a> configured using<a href="../c3ref/c_config_getmalloc.html">SQLITE_CONFIG_SCRATCH</a>. The value returned is in allocations, notin bytes. Since a single thread may only have one scratch allocationoutstanding at time, this parameter also reports the number of threadsusing scratch memory at the same time.</dd></p><p><dt>SQLITE_STATUS_SCRATCH_OVERFLOW</dt><dd>This parameter returns the number of bytes of scratch memoryallocation which could not be statisfied by the <a href="../c3ref/c_config_getmalloc.html">SQLITE_CONFIG_SCRATCH</a>buffer and where forced to overflow to <a href="../c3ref/free.html">sqlite3_malloc()</a>. The valuesreturned include overflows because the requested allocation was toolarger (that is, because the requested allocation was larger than the"sz" parameter to <a href="../c3ref/c_config_getmalloc.html">SQLITE_CONFIG_SCRATCH</a>) and because no scratch bufferslots were available.</dd></p><p><dt>SQLITE_STATUS_SCRATCH_SIZE</dt><dd>This parameter records the largest memory allocation requesthanded to <a href="../malloc.html#scratch">scratch memory allocator</a>. Only the value returned in the*pHighwater parameter to <a href="../c3ref/status.html">sqlite3_status()</a> is of interest.The value written into the *pCurrent parameter is undefined.</dd></p><p><dt>SQLITE_STATUS_PARSER_STACK</dt><dd>This parameter records the deepest parser stack. It is onlymeaningful if SQLite is compiled with <a href="../compile.html#yytrackmaxstackdepth">YYTRACKMAXSTACKDEPTH</a>.</dd></dl></p><p>New status parameters may be added from time to time.</p><p>See also lists of <a href="objlist.html">Objects</a>, <a href="constlist.html">Constants</a>, and <a href="funclist.html">Functions</a>.</p><hr><small><i>This page last modified 2008/12/09 18:44:04 UTC</i></small></div></body></html>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -