C# 4.0 полное руководство - 2011
Шрифт:
public static void Collect (int generation, GCCollectionMode mode)
public static int CollectionCount (int generation)
public static int GetGeneration (object obj)
Задает в качестве параметра bytes Allocated количество байтов, распределенных в неуправляемой области памяти Отменяет уведомление о “сборке мусора”
Инициализирует процесс “сборки мусора” Инициализирует процесс “сборки мусора”
generation
Инициализирует процесс “сборки мусора” в областях памяти с номерами поколений от 0 до generation в'режиме, определяемом параметром mode
Возвращает количество операций “сборки мусора”, выполненных в области памяти с номером поколения generation Возвращает номером поколения для области памяти, доступной по ссылке obj
_Продолжение табл. 21.15
Метод
Назначение
public static int
Возвращает номер поколения для области па
GetGeneration(WeakReference wo)
мяти, доступной по “слабой" ссылке, задавае
мой параметром wo. Наличие “слабой" ссылки не защищает объект от “сборки мусора”
public static long
Возвращает общий объем памяти (в байтах),
GetTotalMemory(bool
выделенной на данный момент. Если параметр
forceFullCollection)
forceFullCollection имеет логическое значение true, то сначала выполняется “сборка мусора”
public static void
Создает ссылку на объект obj, защищая
KeepAlive(object obj)
его от “сборки мусора”. Действие этой ссылки оканчивается после выполнения метода
KeepAlive
public static void Regist
Разрешает уведомление о “сборке мусора”. Зна
erForFullGCNotification(in
чение параметра maxGenerationThreshold
t maxGenerationThreshold, int
обозначает количество объектов второго поко
largeObj ectHeapThreshold)
ления в обычной “куче", которые будут инициировать уведомление. А значение параметра largeObj ectHeapThreshold обозначает количество объектов в крупной “куче", которые будут
инициировать уведомление. Оба значения должны быть указаны в пределах от 1 до 99public static void
Задает в качестве параметра bytesAllocated
RemoveMemoryPressure(long
количество байтов, освобождаемых в неуправ
bytesAllocated)
ляемой области памяти
public static void
Вызывает деструктор для объекта obj.
ReRegisterForFinalize(object
Этот метод аннулирует действие метода
obj)
SuppressFinalize
public static void
Препятствует вызову деструктора для объекта
SuppressFinalize(object obj)
obj
public static
Ожидает уведомления о том, что должен про
GCNotificationStatus
изойти полный цикл “сборки мусора”. Здесь
WaitForFullGCApproach
GCNotif icationStatus — перечисление, определенное в пространстве имен System
public static
Ожидает уведомления о том, что должен
GCNotificationStatus
произойти полный цикл “сборки мусора",
WaitForFullGCApproach(int
в течение времени, задаваемого пара
millisecondsTimeout)
метром millisecondsTimeout. Здесь GCNotif icationStatus — перечисление, определенное в пространстве имен System
public static
Ожидает уведомления о завершении
GCNotificationStatus
полного цикла “сборки мусора". Здесь
WaitForFullGCComplete
GCNotif icationStatus — перечисление, определенное в пространстве имен System
Кроме того, в классе GC определяется следующее доступное только для чтения свойство: