語言

ThreadLocalRandom 類別

定義

一個隨機數產生器(週期2<>為64</sup>),被隔離於當前執行緒。

[Android.Runtime.Register("java/util/concurrent/ThreadLocalRandom", DoNotGenerateAcw=true)]
public class ThreadLocalRandom : Java.Util.Random
[<Android.Runtime.Register("java/util/concurrent/ThreadLocalRandom", DoNotGenerateAcw=true)>]
type ThreadLocalRandom = class
    inherit Random
繼承
ThreadLocalRandom
屬性

備註

一個隨機數產生器(週期2<>為64</sup>),被隔離於當前執行緒。 與類別java.util.Random使用的全域java.lang.Math生成元類似,a ThreadLocalRandom 初始化時使用內部生成的種子,且此種子無法進行其他修改。 在適用的情況下,在並行程式中使用 ThreadLocalRandom 物件而非共享 Random 物件,通常會遇到較少的開銷與爭用。 當多個任務(例如每個 aThreadLocalRandom)在執行緒池中平行使用隨機數時,使用 特別ForkJoinTask適用。

此類的用法通常應為: ThreadLocalRandom.current().nextX(...) (其中 X 為 Int、 Long、 等)。 當所有使用方式都屬於此類時,不可能不小心在多個執行緒間共享 a ThreadLocalRandom 。

此類別也提供其他常用的有界隨機生成方法。

的 ThreadLocalRandom 實例並非加密安全。 考慮改 java.security.SecureRandom 用在安全敏感的應用中。 此外,預設建構的實例除非將 System#getProperty 系統屬性java.util.secureRandomSeed 設為 true,否則不會使用密碼學上隨機的種子。

在 1.7 版本中加入。

Java 文件 java.util.concurrent.ThreadLocalRandom。

本頁部分內容為基於 Open Source Project 所創建與分享的作品,並依授權條款所描述的使用進行修改。

建構函式

名稱 Description
ThreadLocalRandom(IntPtr, JniHandleOwnership)

建立 JNI 物件的 Managed 表示法時使用的建構函式;由運行時間呼叫。

屬性

名稱 Description
Class

傳回這個 Object的運行時間類別。

(繼承來源 Object)
Handle

基礎Android實例的句柄。

(繼承來源 Object)
JniIdentityHashCode

取得由互通執行時指派給此 Java 對等端的身份雜湊碼。

(繼承來源 Object)
JniManagedPeerState

一個隨機數產生器(週期2<>為64</sup>),被隔離於當前執行緒。

(繼承來源 JavaObject)
JniPeerMembers

一個隨機數產生器(週期2<>為64</sup>),被隔離於當前執行緒。

PeerReference

取得這個 Java 節點的 JNI 物件參考。

(繼承來源 Object)
ThresholdClass

此 API 支援 Mono for Android 基礎架構,並非直接從你的程式碼中使用。

ThresholdType

此 API 支援 Mono for Android 基礎架構,並非直接從你的程式碼中使用。

方法

名稱 Description
Clone()

建立並傳回這個 對象的複本。

(繼承來源 Object)
Construct(JniObjectReference, JniObjectReferenceOptions)

一個隨機數產生器(週期2<>為64</sup>),被隔離於當前執行緒。

(繼承來源 JavaObject)
Current()

回傳當前執行緒的 ThreadLocalRandom 物件。

Dispose()

釋放該 Java 節點所持有的資源。

(繼承來源 Object)
Dispose(Boolean)

釋放該 Java 節點所持有的資源。

(繼承來源 Object)
DisposeUnlessReferenced()

一個隨機數產生器(週期2<>為64</sup>),被隔離於當前執行緒。

(繼承來源 JavaObject)
Equals(Object)

一個隨機數產生器(週期2<>為64</sup>),被隔離於當前執行緒。

(繼承來源 JavaObject)
Equals(Object)

指出其他物件是否「等於」這個物件。

(繼承來源 Object)
GetHashCode()

傳回此物件的雜湊碼值。

(繼承來源 Object)
JavaFinalize()
已淘汰.

當垃圾收集決定不再參考物件時,垃圾收集行程在 物件上呼叫。

(繼承來源 Object)
Next(Int32)

產生下一個偽隨機數。

(繼承來源 Random)
NextBoolean()

回傳來自此隨機數產生器序列的下一個偽隨機、均勻分布 boolean 的值。

(繼承來源 Random)
NextBytes(Byte[])

隨機產生位元組並將其放入使用者提供的位元組陣列中。

(繼承來源 Random)
NextDouble()

回傳該隨機數產生器序列中double0.0下一個偽隨機、均勻分布1.0的值。

(繼承來源 Random)
NextDouble(Double, Double)

回傳一個偽隨機選擇的雙重值,介於指定原點(包含)與指定界限(獨佔)之間。

NextDouble(Double)

回傳一個偽隨機選擇的雙倍值,介於零(包含)與指定界限(獨佔)之間。

NextFloat()

回傳該隨機數產生器序列中float0.0下一個偽隨機、均勻分布1.0的值。

(繼承來源 Random)
NextFloat(Single, Single)

回傳一個從origin(包含)到bound(排他)的偽隨機float值。

NextFloat(Single)

回傳一個從零(包含)到bound(排他)的偽隨機float值。

NextGaussian()

回傳下一個偽隨機、高斯分布(「常態分布」) double 值,均 0.0 值與標準差 1.0 皆為此隨機數產生器的序列。

(繼承來源 Random)
NextInt()

回傳來自此隨機數產生器序列的下一個偽隨機、均勻分布 int 的值。

(繼承來源 Random)
NextInt(Int32, Int32)

回傳一個偽隨機選擇的整數值,介於指定原點(包含)與指定界限(獨佔)之間。

NextInt(Int32)

回傳一個偽隨機、均勻分布 int 的值,介於0(含)與指定值(排他)之間,取自此隨機數產生器的序列。

(繼承來源 Random)
NextLong()

回傳來自此隨機數產生器序列的下一個偽隨機、均勻分布 long 的值。

(繼承來源 Random)
NextLong(Int64, Int64)

回傳一個偽隨機選擇的長值,介於指定原點(包含)與指定界限(獨佔)之間。

NextLong(Int64)

回傳一個偽隨機選擇的多段值,介於零(包含)與指定界限(獨佔)之間。

Notify()

喚醒正在等候此物件監視器的單一線程。

(繼承來源 Object)
NotifyAll()

喚醒正在等候此物件監視器的所有線程。

(繼承來源 Object)
SetHandle(IntPtr, JniHandleOwnership)

設定 Handle 屬性。

(繼承來源 Object)
SetPeerReference(JniObjectReference, JniObjectReferenceOptions)

一個隨機數產生器(週期2<>為64</sup>),被隔離於當前執行緒。

(繼承來源 JavaObject)
SetSeed(Int64)

用單一 long 種子設定這個隨機數產生器的種子。

(繼承來源 Random)
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)

明確介面實作

名稱 Description
IJavaPeerable.Disposed()

一個隨機數產生器(週期2<>為64</sup>),被隔離於當前執行緒。

(繼承來源 JavaObject)
IJavaPeerable.Finalized()

一個隨機數產生器(週期2<>為64</sup>),被隔離於當前執行緒。

(繼承來源 JavaObject)
IJavaPeerable.JniObjectReferenceControlBlock

一個隨機數產生器(週期2<>為64</sup>),被隔離於當前執行緒。

(繼承來源 JavaObject)
IJavaPeerable.SetJniIdentityHashCode(Int32)

一個隨機數產生器(週期2<>為64</sup>),被隔離於當前執行緒。

(繼承來源 JavaObject)
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates)

一個隨機數產生器(週期2<>為64</sup>),被隔離於當前執行緒。

(繼承來源 JavaObject)
IJavaPeerable.SetPeerReference(JniObjectReference)

一個隨機數產生器(週期2<>為64</sup>),被隔離於當前執行緒。

(繼承來源 JavaObject)
IJavaPeerable.UnregisterFromRuntime()

一個隨機數產生器(週期2<>為64</sup>),被隔離於當前執行緒。

(繼承來源 Random)

擴充方法

名稱 Description
GetJniTypeName(IJavaPeerable)

取得實例 self類型的 JNI 名稱。

JavaAs<TResult>(IJavaPeerable)

試著強制self輸入 TResult,檢查 強制在 Java 端是否有效。

JavaCast<TResult>(IJavaObject)

執行 Android 執行時間檢查的類型轉換。

JavaCast<TResult>(IJavaObject)

一個隨機數產生器(週期2<>為64</sup>),被隔離於當前執行緒。

TryJavaCast<TResult>(IJavaPeerable, TResult)

試著強制self輸入 TResult,檢查 強制在 Java 端是否有效。

適用於