SplittableRandom クラス
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
サブタスクを生成する可能性がある (他のコンテキストの中で) 分離された並列計算で使用できる、一様な擬似乱数値のジェネレーター。
[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
と同様の使用法を持つ、 型double
int
long
の擬似乱数を生成するためのjava.util.Random
メソッドがサポートされていますが、次の点で異なります。
<ul>
<li>一連の生成された値は、乱数ジェネレーターの独立性と均一性プロパティをテストする DieHarder スイートに合格します。 (最近 バージョン 3.31.1 で検証されました。これらのテストでは、特定の型と範囲のメソッドのみを検証しますが、同様のプロパティは、少なくともほぼ他のユーザーにも保持されることが想定されています。 em period/em> (繰り返される前の一連の生成値の長さ) は、少なくとも 2<sup>64</sup です>。<><
<li>メソッド #split
は、変更可能な状態を現在のインスタンスと共有しない新しい SplittableRandom インスタンスを構築して返します。 ただし、非常に高い確率で、2 つのオブジェクトによってまとめて生成される値は、1 つの SplittableRandom
オブジェクトを使用して 1 つのスレッドによって同じ量の値が生成された場合と同じ統計的プロパティを持ちます。
<li>SplittableRandom のインスタンスは、<>em not</em> thread-safe です。 これらは、スレッド間で共有されずに分割されるように設計されています。 たとえば、乱数を java.util.concurrent.ForkJoinTask fork/join-style
使用した計算には、 という形式 new Subtask(aSplittableRandom.split()).fork()
の構築が含まれる場合があります。
<li>このクラスは、モードで使用する場合に上記の手法を使用するランダム ストリームを生成するための追加のメソッドを stream.parallel()
提供します。
</ul>
の SplittableRandom
インスタンスは、暗号化によってセキュリティで保護されていません。 代わりに、セキュリティに依存するアプリケーションで を使用 java.security.SecureRandom
することを検討してください。 さらに、System#getProperty システム プロパティjava.util.secureRandomSeed
が に true
設定されていない限り、既定で構築されたインスタンスでは、暗号化されたランダム シードは使用されません。
1.8 で追加されました。
の Java ドキュメント java.util.SplittableRandom
。
このページの一部は、によって作成および共有され、に記載されている条件に従って使用される作業に基づく変更です。
コンストラクター
SplittableRandom() |
現在のプログラム内の他のインスタンスとは統計的に独立した値のシーケンスを生成する可能性がある新しい SplittableRandom インスタンスを作成します。と は、プログラムの呼び出しによって異なる場合があり、通常は異なる場合があります。 |
SplittableRandom(Int64) |
指定した初期シードを使用して、新しい SplittableRandom インスタンスを作成します。 |
プロパティ
Class |
この |
Handle |
基になる Android インスタンスへのハンドル。 (継承元 Object) |
JniIdentityHashCode |
サブタスクを生成する可能性がある (他のコンテキストの中で) 分離された並列計算で使用できる、一様な擬似乱数値のジェネレーター。 (継承元 Object) |
JniPeerMembers |
サブタスクを生成する可能性がある (他のコンテキストの中で) 分離された並列計算で使用できる、一様な擬似乱数値のジェネレーター。 |
PeerReference |
サブタスクを生成する可能性がある (他のコンテキストの中で) 分離された並列計算で使用できる、一様な擬似乱数値のジェネレーター。 (継承元 Object) |
ThresholdClass |
この API は Android 用 Mono インフラストラクチャをサポートしており、コードから直接使用することを意図したものではありません。 (継承元 Object) |
ThresholdType |
この API は Android 用 Mono インフラストラクチャをサポートしており、コードから直接使用することを意図したものではありません。 (継承元 Object) |
メソッド
Clone() |
このオブジェクトのコピーを作成して返します。 (継承元 Object) |
Dispose() |
サブタスクを生成する可能性がある (他のコンテキストの中で) 分離された並列計算で使用できる、一様な擬似乱数値のジェネレーター。 (継承元 Object) |
Dispose(Boolean) |
サブタスクを生成する可能性がある (他のコンテキストの中で) 分離された並列計算で使用できる、一様な擬似乱数値のジェネレーター。 (継承元 Object) |
Equals(Object) |
他のオブジェクトがこのオブジェクトと "等しい" かどうかを示します。 (継承元 Object) |
GetHashCode() |
オブジェクトのハッシュ コード値を返します。 (継承元 Object) |
JavaFinalize() |
ガベージ コレクションがオブジェクトへの参照がなくなったと判断したときに、オブジェクトのガベージ コレクターによって呼び出されます。 (継承元 Object) |
NextBoolean() |
擬似乱数 |
NextBytes(Byte[]) |
ユーザーが指定したバイト配列に、生成された擬似乱数バイトを格納します。 |
NextDouble() |
0 (包括) から 1 (排他的) の間の擬似乱数 |
NextDouble(Double) |
0 の間の擬似乱数 |
NextDouble(Double, Double) |
指定した原点 (包括) と連結 (排他) の間の擬似乱数 |
NextInt() |
擬似乱数 |
NextInt(Int32) |
0 (両端を含む) と指定されたバインド (排他的) の間の擬似乱数 |
NextInt(Int32, Int32) |
指定した原点 (両端を含む) と指定したバインド (排他的) の間の擬似乱数 |
NextLong() |
擬似乱数 |
NextLong(Int64) |
0 (両端を含む) と指定されたバインド (排他的) の間の擬似乱数 |
NextLong(Int64, Int64) |
指定した原点 (両端を含む) と指定したバインド (排他的) の間の擬似乱数 |
Notify() |
このオブジェクトのモニターで待機している 1 つのスレッドをウェイクアップします。 (継承元 Object) |
NotifyAll() |
このオブジェクトのモニターで待機しているすべてのスレッドをウェイクアップします。 (継承元 Object) |
SetHandle(IntPtr, JniHandleOwnership) |
Handle プロパティを設定します。 (継承元 Object) |
Split() |
変更可能な状態をこのインスタンスと共有しない新しい SplittableRandom インスタンスを構築して返します。 |
ToArray<T>() |
サブタスクを生成する可能性がある (他のコンテキストの中で) 分離された並列計算で使用できる、一様な擬似乱数値のジェネレーター。 (継承元 Object) |
ToString() |
オブジェクトの文字列形式を返します。 (継承元 Object) |
UnregisterFromRuntime() |
サブタスクを生成する可能性がある (他のコンテキストの中で) 分離された並列計算で使用できる、一様な擬似乱数値のジェネレーター。 (継承元 Object) |
Wait() |
現在のスレッドが起動するまで待機します。通常<>は、通知</em> または <em>割り込み</em によって待機します>。 (継承元 Object) |
Wait(Int64) |
現在のスレッドが起動するまで待機します。通常<>は、通知</em> または>< em 割り込み</em>、または一定のリアルタイムが経過するまで待機します。 (継承元 Object) |
Wait(Int64, Int32) |
現在のスレッドが起動するまで待機します。通常<>は、通知</em> または>< 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) |
サブタスクを生成する可能性がある (他のコンテキストの中で) 分離された並列計算で使用できる、一様な擬似乱数値のジェネレーター。 |