ZEND_API void start_memory_manager(ALS_D)
{
+ int i, j;
+ void *cached_entries[MAX_CACHED_MEMORY][MAX_CACHED_ENTRIES];
+
AG(phead) = AG(head) = NULL;
#if MEMORY_LIMIT
memset(AG(fast_cache_list_head), 0, sizeof(AG(fast_cache_list_head)));
memset(AG(cache_count),0,MAX_CACHED_MEMORY*sizeof(unsigned char));
+
+ /* Initialize cache, to prevent fragmentation */
+ for (i=1; i<MAX_CACHED_MEMORY; i++) {
+ for (j=0; j<MAX_CACHED_ENTRIES; j++) {
+ cached_entries[i][j] = emalloc(i);
+ }
+ }
+ for (i=1; i<MAX_CACHED_MEMORY; i++) {
+ for (j=0; j<MAX_CACHED_ENTRIES; j++) {
+ efree(cached_entries[i][j]);
+ }
+ }
}