Beispiel #1
0
        /// <summary>
        /// 
        /// </summary>
        /// <param name="initialCapacity">Initial Memory Capacity in bytes</param>
        /// <param name="increaseOnBytes">Rules is strategy is FIXED_LENGTH_INCREASE, quantity of bytes to increse memory</param>
        /// <param name="strategy">Memory expand strategy</param>
        public MemoryStorage(int initialCapacity,int increaseOnBytes, eMemoryExpandStartegy strategy)
        {
            if (initialCapacity < 5)
                initialCapacity = 5;

            _initialCapacity = initialCapacity;

            if(strategy == eMemoryExpandStartegy.FIXED_LENGTH_INCREASE)
            {
                if (increaseOnBytes < 5)
                    increaseOnBytes = 5;

                _increaseOnInBytes = increaseOnBytes;
            }

            _expandStrategy = strategy;
            _capacity = _initialCapacity;
            _f = new byte[_initialCapacity];
        }
Beispiel #2
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="initialCapacity">Initial Memory Capacity in bytes</param>
        /// <param name="increaseOnBytes">Rules is strategy is FIXED_LENGTH_INCREASE, quantity of bytes to increse memory</param>
        /// <param name="strategy">Memory expand strategy</param>
        public MemoryStorage(int initialCapacity, int increaseOnBytes, eMemoryExpandStartegy strategy)
        {
            if (initialCapacity < 5)
            {
                initialCapacity = 5;
            }

            _initialCapacity = initialCapacity;

            if (strategy == eMemoryExpandStartegy.FIXED_LENGTH_INCREASE)
            {
                if (increaseOnBytes < 5)
                {
                    increaseOnBytes = 5;
                }

                _increaseOnInBytes = increaseOnBytes;
            }

            _expandStrategy = strategy;
            _capacity       = _initialCapacity;
            _f = new byte[_initialCapacity];
        }