Как узнать, сколько "весит" список (List<>) с объектами ? - C#

Узнай цену своей работы

Формулировка задачи:

List<Data> list = new List<Data>();
list.Add(new Data());
list.Add(new Data());
Как мне узнать, сколько этот список занимает оперативки ? При этом что в классе Data, могут быть ссылки.

Решение задачи: «Как узнать, сколько "весит" список (List<>) с объектами ?»

textual
Листинг программы
using System;
using System.Collections.Generic;
using System.Windows.Forms;
// Дописать
using System.IO;
using System.Runtime.Serialization.Formatters.Binary;
 
namespace WindowsFormsApplication1
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
 
            // Пример:
            List<Data> list = new List<Data>();
            list.Add(new Data());
            list.Add(new Data());
 
            long Size = -1;
            using (Stream s = new MemoryStream())
            {
                BinaryFormatter formatter = new BinaryFormatter();
                formatter.Serialize(s, list);
                Size = s.Length;
            }
            MessageBox.Show(Size.ToString());
        }
    }
 
    // Дописать
    [Serializable]
    public class Data
    {
        public int Number { get; set; }
    }
}

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

5   голосов , оценка 3.6 из 5
Похожие ответы