summaryrefslogtreecommitdiffstats
path: root/third_party/sqlite/parse.h
diff options
context:
space:
mode:
authordeanm@chromium.org <deanm@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2008-10-31 15:59:10 +0000
committerdeanm@chromium.org <deanm@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2008-10-31 15:59:10 +0000
commit6b50fec83127803432211052f4127659c0f8408e (patch)
treeb9939a095a570930d1311e51c6b8281e90c6d3b5 /third_party/sqlite/parse.h
parenteb993e2b3c376067a62e614f733c24b2027b4ead (diff)
downloadchromium_src-6b50fec83127803432211052f4127659c0f8408e.zip
chromium_src-6b50fec83127803432211052f4127659c0f8408e.tar.gz
chromium_src-6b50fec83127803432211052f4127659c0f8408e.tar.bz2
The preloading code allocates a ton of memory, loads everything in, goes through the pager, then deallocates the memory. It was previous just using malloc() and free(). This means it goes through heap allocate, which decides that large allocations (larger than ~500k) should get their own memory, and it calls VirtualAlloc(). However, it does this while holding the heap lock, meaning all other threads block their heap operations until the memory is allocated. Instead, since we know these allocations are likely to be large, just get raw pages from the OS directly.
Review URL: http://codereview.chromium.org/8935 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@4282 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'third_party/sqlite/parse.h')
0 files changed, 0 insertions, 0 deletions