Exemple #1
0
            private void TakeSample()
            {
                RecordList_.Clear();
                SampleTime_  = DateTime.Now;
                SampleCount_ = 0;
                SampleSize_  = 0L;

                var Samples = Resources.FindObjectsOfTypeAll <UnityEngine.Object>();

                foreach (var Sam in Samples)
                {
                    var SampleSize = 0L;
#if UNITY_5_6_OR_NEWER
                    SampleSize = Profiler.GetRuntimeMemorySizeLong(Sam);
#else
                    SampleSize = Profiler.GetRuntimeMemorySize(Sam);
#endif
                    var Name = Sam.GetType().Name;
                    SampleCount_++;
                    SampleSize_ += SampleSize;

                    Record CurRec = null;
                    foreach (var Rec in RecordList_)
                    {
                        if (Rec.Name == Name)
                        {
                            CurRec = Rec;
                            break;
                        }
                    }

                    if (CurRec == null)
                    {
                        CurRec = new Record(Name);
                        RecordList_.Add(CurRec);
                    }

                    CurRec.Count++;
                    CurRec.Size += SampleSize;
                }

                RecordList_.Sort(RecordComparer);
            }
Exemple #2
0
            private void TakeSample()
            {
                SampleTime_           = DateTime.Now;
                SampleSize_           = 0L;
                DuplicateSampleSize_  = 0L;
                DuplicateSimpleCount_ = 0;
                SampleList_.Clear();

                var Samples = Resources.FindObjectsOfTypeAll <T>();

                foreach (var Sam in Samples)
                {
                    var MemSize = 0L;
#if UNITY_5_6_OR_NEWER
                    MemSize = Profiler.GetRuntimeMemorySizeLong(Sam);
#else
                    MemSize = Profiler.GetRuntimeMemorySize(Sam);
#endif
                    SampleSize_ += MemSize;
                    SampleList_.Add(new Sample(Sam.name, Sam.GetType().Name, MemSize));
                }

                SampleList_.Sort(SampleComparer);

                for (var Index = 1; Index < SampleList_.Count; ++Index)
                {
                    if (SampleList_[Index].Name == SampleList_[Index - 1].Name &&
                        SampleList_[Index].Type == SampleList_[Index - 1].Type &&
                        SampleList_[Index].Size == SampleList_[Index - 1].Size)
                    {
                        SampleList_[Index].Highlight = true;
                        DuplicateSampleSize_        += SampleList_[Index].Size;
                        DuplicateSimpleCount_++;
                    }
                }
            }