pcache1 40092 ext/sqlite3/libsqlite/sqlite3.c if( pcache1.isInit ){ pcache1 40095 ext/sqlite3/libsqlite/sqlite3.c pcache1.szSlot = sz; pcache1 40096 ext/sqlite3/libsqlite/sqlite3.c pcache1.nSlot = pcache1.nFreeSlot = n; pcache1 40097 ext/sqlite3/libsqlite/sqlite3.c pcache1.nReserve = n>90 ? 10 : (n/10 + 1); pcache1 40098 ext/sqlite3/libsqlite/sqlite3.c pcache1.pStart = pBuf; pcache1 40099 ext/sqlite3/libsqlite/sqlite3.c pcache1.pFree = 0; pcache1 40100 ext/sqlite3/libsqlite/sqlite3.c pcache1.bUnderPressure = 0; pcache1 40103 ext/sqlite3/libsqlite/sqlite3.c p->pNext = pcache1.pFree; pcache1 40104 ext/sqlite3/libsqlite/sqlite3.c pcache1.pFree = p; pcache1 40107 ext/sqlite3/libsqlite/sqlite3.c pcache1.pEnd = pBuf; pcache1 40122 ext/sqlite3/libsqlite/sqlite3.c assert( sqlite3_mutex_notheld(pcache1.grp.mutex) ); pcache1 40123 ext/sqlite3/libsqlite/sqlite3.c if( nByte<=pcache1.szSlot ){ pcache1 40124 ext/sqlite3/libsqlite/sqlite3.c sqlite3_mutex_enter(pcache1.mutex); pcache1 40125 ext/sqlite3/libsqlite/sqlite3.c p = (PgHdr1 *)pcache1.pFree; pcache1 40127 ext/sqlite3/libsqlite/sqlite3.c pcache1.pFree = pcache1.pFree->pNext; pcache1 40128 ext/sqlite3/libsqlite/sqlite3.c pcache1.nFreeSlot--; pcache1 40129 ext/sqlite3/libsqlite/sqlite3.c pcache1.bUnderPressure = pcache1.nFreeSlot<pcache1.nReserve; pcache1 40130 ext/sqlite3/libsqlite/sqlite3.c assert( pcache1.nFreeSlot>=0 ); pcache1 40134 ext/sqlite3/libsqlite/sqlite3.c sqlite3_mutex_leave(pcache1.mutex); pcache1 40144 ext/sqlite3/libsqlite/sqlite3.c sqlite3_mutex_enter(pcache1.mutex); pcache1 40147 ext/sqlite3/libsqlite/sqlite3.c sqlite3_mutex_leave(pcache1.mutex); pcache1 40161 ext/sqlite3/libsqlite/sqlite3.c if( p>=pcache1.pStart && p<pcache1.pEnd ){ pcache1 40163 ext/sqlite3/libsqlite/sqlite3.c sqlite3_mutex_enter(pcache1.mutex); pcache1 40166 ext/sqlite3/libsqlite/sqlite3.c pSlot->pNext = pcache1.pFree; pcache1 40167 ext/sqlite3/libsqlite/sqlite3.c pcache1.pFree = pSlot; pcache1 40168 ext/sqlite3/libsqlite/sqlite3.c pcache1.nFreeSlot++; pcache1 40169 ext/sqlite3/libsqlite/sqlite3.c pcache1.bUnderPressure = pcache1.nFreeSlot<pcache1.nReserve; pcache1 40170 ext/sqlite3/libsqlite/sqlite3.c assert( pcache1.nFreeSlot<=pcache1.nSlot ); pcache1 40171 ext/sqlite3/libsqlite/sqlite3.c sqlite3_mutex_leave(pcache1.mutex); pcache1 40177 ext/sqlite3/libsqlite/sqlite3.c sqlite3_mutex_enter(pcache1.mutex); pcache1 40179 ext/sqlite3/libsqlite/sqlite3.c sqlite3_mutex_leave(pcache1.mutex); pcache1 40191 ext/sqlite3/libsqlite/sqlite3.c if( p>=pcache1.pStart && p<pcache1.pEnd ){ pcache1 40192 ext/sqlite3/libsqlite/sqlite3.c return pcache1.szSlot; pcache1 40296 ext/sqlite3/libsqlite/sqlite3.c if( pcache1.nSlot && (pCache->szPage+pCache->szExtra)<=pcache1.szSlot ){ pcache1 40297 ext/sqlite3/libsqlite/sqlite3.c return pcache1.bUnderPressure; pcache1 40456 ext/sqlite3/libsqlite/sqlite3.c assert( pcache1.isInit==0 ); pcache1 40457 ext/sqlite3/libsqlite/sqlite3.c memset(&pcache1, 0, sizeof(pcache1)); pcache1 40459 ext/sqlite3/libsqlite/sqlite3.c pcache1.grp.mutex = sqlite3_mutex_alloc(SQLITE_MUTEX_STATIC_LRU); pcache1 40460 ext/sqlite3/libsqlite/sqlite3.c pcache1.mutex = sqlite3_mutex_alloc(SQLITE_MUTEX_STATIC_PMEM); pcache1 40462 ext/sqlite3/libsqlite/sqlite3.c pcache1.grp.mxPinned = 10; pcache1 40463 ext/sqlite3/libsqlite/sqlite3.c pcache1.isInit = 1; pcache1 40474 ext/sqlite3/libsqlite/sqlite3.c assert( pcache1.isInit!=0 ); pcache1 40475 ext/sqlite3/libsqlite/sqlite3.c memset(&pcache1, 0, sizeof(pcache1)); pcache1 40519 ext/sqlite3/libsqlite/sqlite3.c pGroup = &pcache1.grp; pcache1 40920 ext/sqlite3/libsqlite/sqlite3.c return pcache1.mutex; pcache1 40935 ext/sqlite3/libsqlite/sqlite3.c assert( sqlite3_mutex_notheld(pcache1.grp.mutex) ); pcache1 40936 ext/sqlite3/libsqlite/sqlite3.c assert( sqlite3_mutex_notheld(pcache1.mutex) ); pcache1 40937 ext/sqlite3/libsqlite/sqlite3.c if( pcache1.pStart==0 ){ pcache1 40939 ext/sqlite3/libsqlite/sqlite3.c pcache1EnterMutex(&pcache1.grp); pcache1 40940 ext/sqlite3/libsqlite/sqlite3.c while( (nReq<0 || nFree<nReq) && ((p=pcache1.grp.pLruTail)!=0) ){ pcache1 40950 ext/sqlite3/libsqlite/sqlite3.c pcache1LeaveMutex(&pcache1.grp); pcache1 40969 ext/sqlite3/libsqlite/sqlite3.c for(p=pcache1.grp.pLruHead; p; p=p->pLruNext){ pcache1 40973 ext/sqlite3/libsqlite/sqlite3.c *pnCurrent = pcache1.grp.nCurrentPage; pcache1 40974 ext/sqlite3/libsqlite/sqlite3.c *pnMax = (int)pcache1.grp.nMaxPage; pcache1 40975 ext/sqlite3/libsqlite/sqlite3.c *pnMin = (int)pcache1.grp.nMinPage;