SplittableRandom クラス
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
サブタスクを生成する可能性がある (他のコンテキストの中で) 分離された並列計算で使用できる、均一な擬似乱数値 (ピリオド 2<up>64</sup>) のジェネレーター。
[Android.Runtime.Register("java/util/SplittableRandom", ApiSince=24, DoNotGenerateAcw=true)]
public sealed class SplittableRandom : Java.Lang.Object, IDisposable, Java.Util.RandomGenerators.IRandomGenerator
[<Android.Runtime.Register("java/util/SplittableRandom", ApiSince=24, DoNotGenerateAcw=true)>]
type SplittableRandom = class
inherit Object
interface IRandomGenerator
interface IJavaObject
interface IDisposable
interface IJavaPeerable
- 継承
- 属性
- 実装
注釈
サブタスクを生成する可能性がある (他のコンテキストの中で) 分離された並列計算で使用できる、均一な擬似乱数値 (ピリオド 2<up>64</sup>) のジェネレーター。 クラス SplittableRandomでは、クラス intと同様の使用法で、long、double、およびjava.util.Random型の擬似乱数を生成するメソッドがサポートされていますが、次の点で異なります。
<ul>
<li>生成された値のシリーズは、乱数ジェネレーターの独立性と均一性のプロパティをテストする DieHarder スイートに合格します。 (バージョン 3.31.1 で最近検証されました)。これらのテストでは、特定の型と範囲のメソッドのみを検証しますが、同様のプロパティは、少なくともほぼ他の型についても保持することが期待されます。 <em>period</em> (繰り返す前に生成される一連の値の長さ) は 2<up>64</sup> です。 </li>
<li> メソッド #split 、現在のインスタンスと変更可能な状態を共有しない新しい SplittableRandom インスタンスを構築して返します。 ただし、非常に高い確率で、2 つのオブジェクトによってまとめて生成される値は、単一の SplittableRandom オブジェクトを使用して単一のスレッドによって同じ量の値が生成された場合と同じ統計的特性を持ちます。
</li>
<li> SplittableRandom の要素はスレッド セーフ<></em>。 これらは、スレッド間で共有されずに分割されるように設計されています。 たとえば、乱数を使用した java.util.concurrent.ForkJoinTask fork/join-style 計算には、フォーム new Subtask(aSplittableRandom.split()).fork()の構築が含まれる場合があります。
<li>このクラスは、 stream.parallel() モードで使用する場合に上記の手法を使用するランダム ストリームを生成するための追加のメソッドを提供します</li>
</ul>
SplittableRandomのインスタンスは、暗号化によってセキュリティで保護されていません。 代わりに、セキュリティに依存するアプリケーションで java.security.SecureRandom を使用することを検討してください。 さらに、System#getProperty システム プロパティjava.util.secureRandomSeed が true に設定されていない限り、既定で構築されたインスタンスは暗号ランダム シードを使用しません。
1.8 で追加されました。
このページの一部は、によって作成および共有され、に記載されている条件に従って使用される作業に基づく変更です。
コンストラクター
| 名前 | 説明 |
|---|---|
| SplittableRandom() |
現在のプログラム内の他のインスタンスとは統計的に独立した値のシーケンスを生成する可能性がある新しい SplittableRandom インスタンスを作成します。プログラムの呼び出しによって異なる場合があり、通常は異なる場合があります。 |
| SplittableRandom(Int64) |
指定した初期シードを使用して、新しい SplittableRandom インスタンスを作成します。 |
プロパティ
| 名前 | 説明 |
|---|---|
| Class |
この |
| Handle |
基になる Android インスタンスへのハンドル。 (継承元 Object) |
| JniIdentityHashCode |
相互運用ランタイムによってこのJava ピアに割り当てられた ID ハッシュ コードを取得します。 (継承元 Object) |
| JniManagedPeerState |
サブタスクを生成する可能性がある (他のコンテキストの中で) 分離された並列計算で使用できる、均一な擬似乱数値 (ピリオド 2<up>64</sup>) のジェネレーター。 (継承元 JavaObject) |
| JniPeerMembers |
サブタスクを生成する可能性がある (他のコンテキストの中で) 分離された並列計算で使用できる、均一な擬似乱数値 (ピリオド 2<up>64</sup>) のジェネレーター。 |
| PeerReference |
このJava ピアの JNI オブジェクト参照を取得します。 (継承元 Object) |
| ThresholdClass |
この API は Android 用 Mono インフラストラクチャをサポートしており、コードから直接使用するためのものではありません。 (継承元 Object) |
| ThresholdType |
この API は Android 用 Mono インフラストラクチャをサポートしており、コードから直接使用するためのものではありません。 (継承元 Object) |
メソッド
| 名前 | 説明 |
|---|---|
| Clone() |
このオブジェクトのコピーを作成して返します。 (継承元 Object) |
| Construct(JniObjectReference, JniObjectReferenceOptions) |
サブタスクを生成する可能性がある (他のコンテキストの中で) 分離された並列計算で使用できる、均一な擬似乱数値 (ピリオド 2<up>64</sup>) のジェネレーター。 (継承元 JavaObject) |
| Dispose() |
このJava ピアによって保持されているリソースを解放します。 (継承元 Object) |
| Dispose(Boolean) |
このJava ピアによって保持されているリソースを解放します。 (継承元 Object) |
| DisposeUnlessReferenced() |
サブタスクを生成する可能性がある (他のコンテキストの中で) 分離された並列計算で使用できる、均一な擬似乱数値 (ピリオド 2<up>64</sup>) のジェネレーター。 (継承元 JavaObject) |
| Equals(Object) |
サブタスクを生成する可能性がある (他のコンテキストの中で) 分離された並列計算で使用できる、均一な擬似乱数値 (ピリオド 2<up>64</sup>) のジェネレーター。 (継承元 JavaObject) |
| Equals(Object) |
他のオブジェクトがこのオブジェクトと "等しい" かどうかを示します。 (継承元 Object) |
| GetHashCode() |
オブジェクトのハッシュ コード値を返します。 (継承元 Object) |
| JavaFinalize() |
古い.
オブジェクトへの参照がなくなったとガベージ コレクションによって判断されたときに、オブジェクトのガベージ コレクターによって呼び出されます。 (継承元 Object) |
| NextBoolean() |
擬似乱数 |
| NextBytes(Byte[]) |
追加する |
| NextDouble() |
0 (包括) から 1 (排他的) までの擬似乱数 |
| NextDouble(Double, Double) |
指定した原点 (包括) とバインド (排他) の間の擬似乱数 |
| NextDouble(Double) |
0 の間の擬似乱数 |
| NextInt() |
擬似乱数 |
| NextInt(Int32, Int32) |
指定した原点 (包括) と指定したバインド (排他) の間の擬似乱数 |
| NextInt(Int32) |
0 (包括) から指定されたバインド (排他) までの擬似乱数 |
| NextLong() |
擬似乱数 |
| NextLong(Int64, Int64) |
指定した原点 (包括) と指定したバインド (排他) の間の擬似乱数 |
| NextLong(Int64) |
0 (包括) から指定されたバインド (排他) までの擬似乱数 |
| Notify() |
このオブジェクトのモニターで待機している 1 つのスレッドを起動します。 (継承元 Object) |
| NotifyAll() |
このオブジェクトのモニターで待機しているすべてのスレッドを起動します。 (継承元 Object) |
| SetHandle(IntPtr, JniHandleOwnership) |
Handle プロパティを設定します。 (継承元 Object) |
| SetPeerReference(JniObjectReference, JniObjectReferenceOptions) |
サブタスクを生成する可能性がある (他のコンテキストの中で) 分離された並列計算で使用できる、均一な擬似乱数値 (ピリオド 2<up>64</sup>) のジェネレーター。 (継承元 JavaObject) |
| Split() |
変更可能な状態をこのインスタンスと共有しない新しい SplittableRandom インスタンスを構築して返します。 |
| ToArray<T>() |
このJava配列ラッパーからマネージド配列を作成します。 (継承元 Object) |
| ToString() |
オブジェクトの文字列形式を返します。 (継承元 Object) |
| UnregisterFromRuntime() |
相互運用ランタイムからこのJava ピアの登録を解除します。 (継承元 Object) |
| Wait() |
現在のスレッドが起動するまで待機します。通常は、 <em>notified</em> または <em>interrupted</em>。 (継承元 Object) |
| Wait(Int64, Int32) |
現在のスレッドは、通常、 <em>notified</em> または <em>interrupted</em>、または一定のリアルタイムが経過するまで、起動されるまで待機します。 (継承元 Object) |
| Wait(Int64) |
現在のスレッドは、通常、 <em>notified</em> または <em>interrupted</em>、または一定のリアルタイムが経過するまで、起動されるまで待機します。 (継承元 Object) |
明示的なインターフェイスの実装
| 名前 | 説明 |
|---|---|
| IJavaPeerable.Disposed() |
サブタスクを生成する可能性がある (他のコンテキストの中で) 分離された並列計算で使用できる、均一な擬似乱数値 (ピリオド 2<up>64</sup>) のジェネレーター。 (継承元 JavaObject) |
| IJavaPeerable.Finalized() |
サブタスクを生成する可能性がある (他のコンテキストの中で) 分離された並列計算で使用できる、均一な擬似乱数値 (ピリオド 2<up>64</sup>) のジェネレーター。 (継承元 JavaObject) |
| IJavaPeerable.JniObjectReferenceControlBlock |
サブタスクを生成する可能性がある (他のコンテキストの中で) 分離された並列計算で使用できる、均一な擬似乱数値 (ピリオド 2<up>64</sup>) のジェネレーター。 (継承元 JavaObject) |
| IJavaPeerable.SetJniIdentityHashCode(Int32) |
サブタスクを生成する可能性がある (他のコンテキストの中で) 分離された並列計算で使用できる、均一な擬似乱数値 (ピリオド 2<up>64</sup>) のジェネレーター。 (継承元 JavaObject) |
| IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates) |
サブタスクを生成する可能性がある (他のコンテキストの中で) 分離された並列計算で使用できる、均一な擬似乱数値 (ピリオド 2<up>64</sup>) のジェネレーター。 (継承元 JavaObject) |
| IJavaPeerable.SetPeerReference(JniObjectReference) |
サブタスクを生成する可能性がある (他のコンテキストの中で) 分離された並列計算で使用できる、均一な擬似乱数値 (ピリオド 2<up>64</sup>) のジェネレーター。 (継承元 JavaObject) |
| IJavaPeerable.UnregisterFromRuntime() |
サブタスクを生成する可能性がある (他のコンテキストの中で) 分離された並列計算で使用できる、均一な擬似乱数値 (ピリオド 2<up>64</sup>) のジェネレーター。 |
拡張メソッド
| 名前 | 説明 |
|---|---|
| GetJniTypeName(IJavaPeerable) |
インスタンス |
| JavaAs<TResult>(IJavaPeerable) |
|
| JavaCast<TResult>(IJavaObject) |
Android ランタイムチェック型変換を実行します。 |
| JavaCast<TResult>(IJavaObject) |
サブタスクを生成する可能性がある (他のコンテキストの中で) 分離された並列計算で使用できる、均一な擬似乱数値 (ピリオド 2<up>64</sup>) のジェネレーター。 |
| TryJavaCast<TResult>(IJavaPeerable, TResult) |
|