Я пишу код, чувствительный к памяти, где по разным причинам я должен указывать некоторые типы значений. Более того, после некоторой разминки мне нужно, чтобы чистые новые распределения кучи были равны 0. После того, как я ввел значения N
, мой алгоритм не нуждается в большем количестве памяти, но эти значения должны часто обновляться. Я хотел бы иметь возможность повторно использовать ящики, уже созданные в куче.Как использовать коробку?
Следующий код предполагает, что ящики не используются повторно (я могу себе представить, почему нет). Есть ли другой метод, когда я могу повторно использовать каждую коробку?
using System;
public class Program
{
public static void Main()
{
object x = 42;
object y = x;
x = 43;
bool isSameBox = Object.ReferenceEquals(x, y);
Console.WriteLine("Same box? {0}.", isSameBox);
}
}
// Output: "Same box? False."
Бокс не присваивает тип значения (т. Е. Int) ссылочному типу. Вы можете использовать класс для хранения типа значения и его повторного использования. – Eric