Example #1
0
        public void UpdateSize(SizeMode mode)
        {
            try
            {
                SelfSize = 0;
                if (mode == SizeMode.Managed || mode == SizeMode.Total)
                {
                    SelfSize += CalculateSelfManagedSize();
                }
                if (mode == SizeMode.Native || mode == SizeMode.Total)
                {
                    SelfSize += CalculateSelfNativeSize();
                }

                TotalSize = SelfSize;
                if (Children == null)
                {
                    return;
                }

                foreach (var child in Children)
                {
                    child.UpdateSize(mode);
                    TotalSize += child.TotalSize;
                }
                Children.Sort();
            }
            finally
            {
                TypeStats.RegisterItem(this);
            }
        }
Example #2
0
        public void UpdateSize()
        {
            try
            {
                SelfSize  = CalculateSelfSize();
                TotalSize = SelfSize;
                if (Children == null)
                {
                    return;
                }

                foreach (var child in Children)
                {
                    child.UpdateSize();
                    TotalSize += child.TotalSize;
                }
                Children.Sort();
            }
            finally
            {
                TypeStats.RegisterItem(this);
            }
        }