/// <summary>
        /// Release all resources associated with this arena
        /// </summary>
        public void Dispose()
        {
            Factory = null; // prevent any resurrections

            var owned = _ownedArenas;

            _ownedArenas = null;
            if (owned != null)
            {
                foreach (var pair in owned)
                {
                    try { pair.Value.Dispose(); } catch { } // best efforts
                }
                owned.Clear();
            }

            var bySize = _blittableBySize;

            _blittableBySize = null;
            if (bySize != null)
            {
                bySize.Clear();
            }
        }
 /// <summary>
 /// Create a new Arena instance
 /// </summary>
 public Arena(ArenaOptions options = null, AllocatorFactory factory = null)
 {
     Options = options ?? ArenaOptions.Default;
     Factory = factory ?? AllocatorFactory.Default;
 }