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

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

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

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

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

textual
Листинг программы
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Windows.Forms;
  4. // Дописать
  5. using System.IO;
  6. using System.Runtime.Serialization.Formatters.Binary;
  7.  
  8. namespace WindowsFormsApplication1
  9. {
  10.     public partial class Form1 : Form
  11.     {
  12.         public Form1()
  13.         {
  14.             InitializeComponent();
  15.  
  16.             // Пример:
  17.             List<Data> list = new List<Data>();
  18.             list.Add(new Data());
  19.             list.Add(new Data());
  20.  
  21.             long Size = -1;
  22.             using (Stream s = new MemoryStream())
  23.             {
  24.                 BinaryFormatter formatter = new BinaryFormatter();
  25.                 formatter.Serialize(s, list);
  26.                 Size = s.Length;
  27.             }
  28.             MessageBox.Show(Size.ToString());
  29.         }
  30.     }
  31.  
  32.     // Дописать
  33.     [Serializable]
  34.     public class Data
  35.     {
  36.         public int Number { get; set; }
  37.     }
  38. }

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


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

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

5   голосов , оценка 3.6 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы