public class Players
{
public int GUID { get; set; }
public string Name { get; set; }
public string Country { get; set; }
public Clans Clan { get; set; }
public PlayerType Type { get; set; }
public Groups Access { get; set; }
public int Level { get; set; }
public int RoomID { get; set; }
public IPAddress IP { get; set; }
public bool IsPlaying { get; set; }
public bool IsProtected { get; set; }
public bool IsBanned { get; set; }
public bool IsInvisible { get; set; }
public bool IsOnline()
{
return (IPAddress.Parse("0.0.0.0").Equals(this.ExtIP)) ? false : true;
}
public string GetIP()
{
return this.ExtIP.ToString();
}
}
У меня есть список, который использует вышеупомянутый класс, и я хотел бы знать, как я могу отслеживать, сколько памяти занимает этот список для каждого нового добавленного пользователя или каждого изменения, внесенного в любого пользователя, уже находящегося в нем, иликак рассчитать это (если это возможно объяснить простым способом, это никогда не было хорошей математикой хе-хе)?
Если есть простой код, который может показать мне, что после обновления списка или ввода / вывода новой записиЯ также был бы признателен.
Это приложение работает на linux под mono и использует MySQL в качестве базы данных, я много полагался на базу данных и, поскольку я запускаю ее на VPS, она потребляет много ресурсов процессора / памяти.
Чтобы оптимизировать его, я рассматриваю возможность загрузки некоторых данных при запуске и управления обновлениями каждые X минут и обновления только важных данных, а не запросов к базе данных для получения большей информации, которую мне нужно использовать.
Чтобы начать, я хотел бы немного больше понять, как я могу контролировать использование памяти и какие списки я использую или могу использоватьдля этого.