Esempio n. 1
0
int main()
{
    char buf[ 512 * 64 + 4 * 64 + 8 ];
    auto& smp = *( SMPool<512, 64>* )buf;
    smp.init();
    Cout( "size = ", smp.size() );
    Stopwatch sw;
    for( int i = 0; i < 9999999; ++i )
    {
        auto p1 = smp.alloc();
        auto p2 = smp.alloc();
        auto p3 = smp.alloc();
        //Cout( (size_t)p1, (size_t)p2, (size_t)p3, " size = ", smp.size() );
        smp.free( p1 );
        smp.free( p2 );
        smp.free( p3 );
        //Cout( "size = ", smp.size() );
    }
    Cout( sw.ElapsedMillseconds() );
    system( "pause" );
    return 0;
}