Читаем C# 4.0 полное руководство - 2011 полностью

Возвращает из последовательности следующее случайное число, которое представлено в форме с плавающей точкой, больше или равно 0,0 и меньше 1,0 Возвращает из последовательности следующее случайное число, которое представлено в форме с плавающей точкой, больше или равно 0,0 и меньше 1,0. Для получения несимметричного или специального распределения случайных чисел этот метод необходимо переопределить в производном классе


Ниже приведена программа, в которой применение классаRandomдемонстрируется на примере создания компьютерного варианта пары игральных костей.

// Компьютерный вариант пары играль/ных костей.

using System;

class RandDice {

static void Main() {

Random ran = new Random();

Console.Write(ran.Next(1, 7) + " ");

Console.WriteLine(ran.Next(1, 7));

}

}

При выполнении этой программы три раза подряд могут быть получены, например, следующие результаты.

5 2

4 4

1 6

Сначала в этой программе создается объект классаRandom.А затем в ней запрашиваются два случайных значения в пределах от 1 до 6.

Управление памятью и класс GC

В классеGCинкапсулируются средства "сборки мусора". Методы, определенные в этом классе, перечислены в табл. 21.15.

Таблица 21.15. Методы, определенные в классе GC


Метод


Назначение


public static

voidAddMemoryPressure(longbytesAllocated)public static void CancelFullGCNotification () public static void Collect () public static void Collect(intgeneration)

public static void Collect (intgeneration,GCCollectionModemode)

public static int CollectionCount (intgeneration)

public static int GetGeneration (objectobj)


Задает в качестве параметра bytes Allocated количество байтов, распределенных в неуправляемой области памяти Отменяет уведомление о “сборке мусора”

Инициализирует процесс “сборки мусора” Инициализирует процесс “сборки мусора” в областях памяти с номерами поколений от 0 до

generation

Инициализирует процесс “сборки мусора” в областях памяти с номерами поколений от 0 до generation в'режиме, определяемом параметром mode

Возвращает количество операций “сборки мусора”, выполненных в области памяти с номером поколения generation Возвращает номером поколения для области памяти, доступной по ссылке obj


_Продолжение табл. 21.15


Метод


Назначение


public static int


Возвращает номер поколения для области па


GetGeneration(WeakReferencewo)


мяти, доступной по “слабой" ссылке, задавае


мой параметром wo. Наличие “слабой" ссылки не защищает объект от “сборки мусора”


public static long


Возвращает общий объем памяти (в байтах),


GetTotalMemory(bool


выделенной на данный момент. Если параметр


forceFullCollection)


forceFullCollection имеет логическое значение true, то сначала выполняется “сборка мусора”


public static void


Создает ссылку на объект obj, защищая


KeepAlive(objectobj)


его от “сборки мусора”. Действие этой ссылки оканчивается после выполнения метода

KeepAlive()


public static void Regist


Разрешает уведомление о “сборке мусора”. Зна


erForFullGCNotification(in


чение параметра maxGenerationThreshold


tmaxGenerationThreshold,int


обозначает количество объектов второго поко


largeObj ectHeapThreshold)


ления в обычной “куче", которые будут инициировать уведомление. А значение параметра largeObj ectHeapThreshold обозначает количество объектов в крупной “куче", которые будут инициировать уведомление. Оба значения должны быть указаны в пределах от 1 до 99


public static void


Задает в качестве параметра bytesAllocated


RemoveMemoryPressure(long


количество байтов, освобождаемых в неуправ


bytesAllocated)


ляемой области памяти


public static void


Вызывает деструктор для объекта obj.


Перейти на страницу:

Похожие книги

1С: Управление торговлей 8.2
1С: Управление торговлей 8.2

Современные торговые предприятия предлагают своим клиентам широчайший ассортимент товаров, который исчисляется тысячами и десятками тысяч наименований. Причем многие позиции могут реализовываться на разных условиях: предоплата, отсрочка платежи, скидка, наценка, объем партии, и т.д. Клиенты зачастую делятся на категории – VIP-клиент, обычный клиент, постоянный клиент, мелкооптовый клиент, и т.д. Товарные позиции могут комплектоваться и разукомплектовываться, многие товары подлежат обязательной сертификации и гигиеническим исследованиям, некондиционные позиции необходимо списывать, на складах периодически должна проводиться инвентаризация, каждая компания должна иметь свою маркетинговую политику и т.д., вообщем – современное торговое предприятие представляет живой организм, находящийся в постоянном движении.Очевидно, что вся эта кипучая деятельность требует автоматизации. Для решения этой задачи существуют специальные программные средства, и в этой книге мы познакомим вам с самым популярным продуктом, предназначенным для автоматизации деятельности торгового предприятия – «1С Управление торговлей», которое реализовано на новейшей технологической платформе версии 1С 8.2.

Алексей Анатольевич Гладкий

Финансы / Программирование, программы, базы данных
iOS. Приемы программирования
iOS. Приемы программирования

Книга, которую вы держите в руках, представляет собой новый, полностью переписанный сборник приемов программирования по работе с iOS. Он поможет вам справиться с наболевшими проблемами, с которыми приходится сталкиваться при разработке приложений для iPhone, iPad и iPod Touch. Вы быстро освоите всю информацию, необходимую для начала работы с iOS 7 SDK, в частности познакомитесь с решениями для добавления в ваши приложения реалистичной физики или движений — в этом вам помогут API UIKit Dynamics.Вы изучите новые многочисленные способы хранения и защиты данных, отправки и получения уведомлений, улучшения и анимации графики, управления файлами и каталогами, а также рассмотрите многие другие темы. При описании каждого приема программирования приводятся образцы кода, которые вы можете смело использовать.

Вандад Нахавандипур

Программирование, программы, базы данных / Программирование / Книги по IT