Ignore:
Timestamp:
Jul 9, 2006 10:05:46 AM (18 years ago)
Author:
bennylp
Message:

Added feature to report peak memory used in caching pool

File:
1 edited

Legend:

Unmodified
Added
Removed
  • pjproject/trunk/pjlib/src/pj/pool_policy_malloc.c

    r364 r594  
    3131static void *default_block_alloc(pj_pool_factory *factory, pj_size_t size) 
    3232{ 
     33    void *p; 
     34 
    3335    PJ_CHECK_STACK(); 
    34     PJ_UNUSED_ARG(factory); 
    35     PJ_UNUSED_ARG(size); 
    3636 
    37     return malloc(size); 
     37    if (factory->on_block_alloc) { 
     38        int rc; 
     39        rc = factory->on_block_alloc(factory, size); 
     40        if (!rc) 
     41            return NULL; 
     42    } 
     43 
     44    p = malloc(size); 
     45 
     46    if (p == NULL) { 
     47        if (factory->on_block_free)  
     48            factory->on_block_free(factory, size); 
     49    } 
     50 
     51    return p; 
    3852} 
    3953 
    40 static void default_block_free(pj_pool_factory *factory, void *mem, pj_size_t size) 
     54static void default_block_free(pj_pool_factory *factory, void *mem,  
     55                               pj_size_t size) 
    4156{ 
    4257    PJ_CHECK_STACK(); 
    43     PJ_UNUSED_ARG(factory); 
    44     PJ_UNUSED_ARG(size); 
     58 
     59    if (factory->on_block_free)  
     60        factory->on_block_free(factory, size); 
    4561 
    4662    free(mem); 
Note: See TracChangeset for help on using the changeset viewer.