Ejemplo n.º 1
0
 public BufferPool(BufferPoolSettings settings, string poolName = "")
 {
     settings.Validate();
     m_settings = settings;
     m_poolName = poolName;
     m_buffers  = new PtrStack();
     Allocate(settings.BufferSize, settings.NumOfBuffers);
 }
        /// <summary>
        ///
        /// </summary>
        /// <param name="bufferSize"></param>
        /// <param name="numOfBuffers"></param>
        /// <returns></returns>
        public static BufferPoolSettings CreateDefault(int bufferSize, int numOfBuffers)
        {
            var bps = new BufferPoolSettings();

            bps.BufferSize   = bufferSize;
            bps.GrowthRatio  = 0.3;
            bps.MaxBuffers   = int.MaxValue;
            bps.NumOfBuffers = numOfBuffers;
            bps.ShrinkRatio  = 2.0;
            return(bps);
        }