SplittableRandom Класс
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Генератор однородных псевдослучайных значений, применимых для использования в изолированных параллельных вычислениях (среди прочих контекстов), которые могут генерировать подзадачи.
[Android.Runtime.Register("java/util/SplittableRandom", ApiSince=24, DoNotGenerateAcw=true)]
public sealed class SplittableRandom : Java.Lang.Object
[<Android.Runtime.Register("java/util/SplittableRandom", ApiSince=24, DoNotGenerateAcw=true)>]
type SplittableRandom = class
inherit Object
- Наследование
- Атрибуты
Комментарии
Генератор однородных псевдослучайных значений, применимых для использования в изолированных параллельных вычислениях (среди прочих контекстов), которые могут генерировать подзадачи. Класс SplittableRandom
поддерживает методы для создания псевдослучайных чисел типа int
, long
и double
с использованием, аналогичными использованию класса java.util.Random
, но отличается следующими способами:
<ul>
<Li>Ряд созданных значений передает свойства проверки независимости и единообразия набора DieHarder генераторов случайных чисел. (Последнее проверено в версии 3.31.1.) Эти тесты проверяют только методы для определенных типов и диапазонов, но предполагается, что аналогичные свойства будут содержать, по крайней мере приблизительно, и для других. Период</><em> (длина любого ряда созданных значений перед повторением) составляет не менее 2<sup>64</sup>.
<Метод #split
li>создает и возвращает новый экземпляр SplittableRandom, который не имеет изменяемого состояния с текущим экземпляром. Однако с очень высокой вероятностью значения, совместно создаваемые двумя объектами, имеют одинаковые статистические свойства, как если бы одно и то же количество значений было создано одним потоком с использованием одного SplittableRandom
объекта.
<Li>Экземпляры SplittableRandom являются потокобезопасными <em>not</em> . Они предназначены для разделения, а не совместного использования между потоками. Например, вычисление java.util.concurrent.ForkJoinTask fork/join-style
с использованием случайных чисел может включать построение формы new Subtask(aSplittableRandom.split()).fork()
.
<Li>Этот класс предоставляет дополнительные методы для создания случайных потоков, которые используют указанные выше методы при использовании в stream.parallel()
режиме .
</ul>
Экземпляры SplittableRandom
не являются криптографически безопасными. Вместо этого рекомендуется использовать java.security.SecureRandom
в приложениях, чувствительных к безопасности. Кроме того, экземпляры, созданные по умолчанию, не используют криптографически случайное начальное значение, если системное свойствоjava.util.secureRandomSeed
System#getProperty не имеет значение true
.
Добавлено в версии 1.8.
Документация по Java для java.util.SplittableRandom
.
Части этой страницы являются изменениями, основанными на работе, созданной и совместно используемой проектом и используемой в соответствии с условиями, Creative Commons 2.5 Attribution License Creative Commons 2.5 Attribution License.
Конструкторы
SplittableRandom() |
Создает новый экземпляр SplittableRandom, который, скорее всего, будет генерировать последовательности значений, статистически независимые от любых других экземпляров в текущей программе; и могут и, как правило, различаются в зависимости от вызовов программы. |
SplittableRandom(Int64) |
Создает новый экземпляр SplittableRandom, используя указанное начальное начальное значение. |
Свойства
Class |
Возвращает класс среды выполнения данного объекта |
Handle |
Дескриптор базового экземпляра Android. (Унаследовано от Object) |
JniIdentityHashCode |
Генератор однородных псевдослучайных значений, применимых для использования в изолированных параллельных вычислениях (среди прочих контекстов), которые могут генерировать подзадачи. (Унаследовано от Object) |
JniPeerMembers |
Генератор однородных псевдослучайных значений, применимых для использования в изолированных параллельных вычислениях (среди прочих контекстов), которые могут генерировать подзадачи. |
PeerReference |
Генератор однородных псевдослучайных значений, применимых для использования в изолированных параллельных вычислениях (среди прочих контекстов), которые могут генерировать подзадачи. (Унаследовано от Object) |
ThresholdClass |
Этот API поддерживает инфраструктуру Mono для Android и не предназначен для использования непосредственно из кода. (Унаследовано от Object) |
ThresholdType |
Этот API поддерживает инфраструктуру Mono для Android и не предназначен для использования непосредственно из кода. (Унаследовано от Object) |
Методы
Clone() |
Создает и возвращает копию этого объекта. (Унаследовано от Object) |
Dispose() |
Генератор однородных псевдослучайных значений, применимых для использования в изолированных параллельных вычислениях (среди прочих контекстов), которые могут генерировать подзадачи. (Унаследовано от Object) |
Dispose(Boolean) |
Генератор однородных псевдослучайных значений, применимых для использования в изолированных параллельных вычислениях (среди прочих контекстов), которые могут генерировать подзадачи. (Унаследовано от Object) |
Equals(Object) |
Указывает, равен ли какой-то другой объект этому объекту. (Унаследовано от Object) |
GetHashCode() |
Возвращает значение хэш-кода для объекта. (Унаследовано от Object) |
JavaFinalize() |
Вызывается сборщиком мусора для объекта , когда сборка мусора определяет, что больше нет ссылок на объект . (Унаследовано от Object) |
NextBoolean() |
Возвращает псевдослучайное |
NextBytes(Byte[]) |
Заполняет предоставленный пользователем массив байтов созданными псевдослучайными байтами. |
NextDouble() |
Возвращает псевдослучайное |
NextDouble(Double) |
Возвращает псевдослучайное |
NextDouble(Double, Double) |
Возвращает псевдослучайное |
NextInt() |
Возвращает псевдослучайное |
NextInt(Int32) |
Возвращает псевдослучайное |
NextInt(Int32, Int32) |
Возвращает псевдослучайное |
NextLong() |
Возвращает псевдослучайное |
NextLong(Int64) |
Возвращает псевдослучайное |
NextLong(Int64, Int64) |
Возвращает псевдослучайное |
Notify() |
Пробуждение одного потока, ожидающего на мониторе этого объекта. (Унаследовано от Object) |
NotifyAll() |
Активирует все потоки, ожидающие на мониторе этого объекта. (Унаследовано от Object) |
SetHandle(IntPtr, JniHandleOwnership) |
Задает свойство Handle. (Унаследовано от Object) |
Split() |
Создает и возвращает новый экземпляр SplittableRandom, который не имеет изменяемого состояния с этим экземпляром. |
ToArray<T>() |
Генератор однородных псевдослучайных значений, применимых для использования в изолированных параллельных вычислениях (среди прочих контекстов), которые могут генерировать подзадачи. (Унаследовано от Object) |
ToString() |
Возвращает строковое представление объекта. (Унаследовано от Object) |
UnregisterFromRuntime() |
Генератор однородных псевдослучайных значений, применимых для использования в изолированных параллельных вычислениях (среди прочих контекстов), которые могут генерировать подзадачи. (Унаследовано от Object) |
Wait() |
Заставляет текущий поток ждать, пока он не будет пробужден, как правило, из-за <уведомления/><em> или <прерывания></em>. (Унаследовано от Object) |
Wait(Int64) |
Заставляет текущий поток ждать, пока он не будет пробужден, как правило, из-за <уведомления</>em>, <>прерывания< или> em, либо до истечения определенного количества реального времени. (Унаследовано от Object) |
Wait(Int64, Int32) |
Заставляет текущий поток ждать, пока он не будет пробужден, как правило, из-за <уведомления</>em>, <>прерывания< или> em, либо до истечения определенного количества реального времени. (Унаследовано от Object) |
Явные реализации интерфейса
IJavaPeerable.Disposed() |
Генератор однородных псевдослучайных значений, применимых для использования в изолированных параллельных вычислениях (среди прочих контекстов), которые могут генерировать подзадачи. (Унаследовано от Object) |
IJavaPeerable.DisposeUnlessReferenced() |
Генератор однородных псевдослучайных значений, применимых для использования в изолированных параллельных вычислениях (среди прочих контекстов), которые могут генерировать подзадачи. (Унаследовано от Object) |
IJavaPeerable.Finalized() |
Генератор однородных псевдослучайных значений, применимых для использования в изолированных параллельных вычислениях (среди прочих контекстов), которые могут генерировать подзадачи. (Унаследовано от Object) |
IJavaPeerable.JniManagedPeerState |
Генератор однородных псевдослучайных значений, применимых для использования в изолированных параллельных вычислениях (среди прочих контекстов), которые могут генерировать подзадачи. (Унаследовано от Object) |
IJavaPeerable.SetJniIdentityHashCode(Int32) |
Генератор однородных псевдослучайных значений, применимых для использования в изолированных параллельных вычислениях (среди прочих контекстов), которые могут генерировать подзадачи. (Унаследовано от Object) |
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates) |
Генератор однородных псевдослучайных значений, применимых для использования в изолированных параллельных вычислениях (среди прочих контекстов), которые могут генерировать подзадачи. (Унаследовано от Object) |
IJavaPeerable.SetPeerReference(JniObjectReference) |
Генератор однородных псевдослучайных значений, применимых для использования в изолированных параллельных вычислениях (среди прочих контекстов), которые могут генерировать подзадачи. (Унаследовано от Object) |
Методы расширения
JavaCast<TResult>(IJavaObject) |
Выполняет преобразование типа, проверенное средой выполнения Android. |
JavaCast<TResult>(IJavaObject) |
Генератор однородных псевдослучайных значений, применимых для использования в изолированных параллельных вычислениях (среди прочих контекстов), которые могут генерировать подзадачи. |
GetJniTypeName(IJavaPeerable) |
Генератор однородных псевдослучайных значений, применимых для использования в изолированных параллельных вычислениях (среди прочих контекстов), которые могут генерировать подзадачи. |