ThreadLocalRandom 類別
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
一個隨機數產生器(週期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
- 繼承
- 屬性
備註
一個隨機數產生器(週期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 |
傳回這個 |
| 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() |
回傳當前執行緒的 |
| 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() |
回傳來自此隨機數產生器序列的下一個偽隨機、均勻分布 |
| NextBytes(Byte[]) |
隨機產生位元組並將其放入使用者提供的位元組陣列中。 (繼承來源 Random) |
| NextDouble() |
回傳該隨機數產生器序列中 |
| NextDouble(Double, Double) |
回傳一個偽隨機選擇的雙重值,介於指定原點(包含)與指定界限(獨佔)之間。 |
| NextDouble(Double) |
回傳一個偽隨機選擇的雙倍值,介於零(包含)與指定界限(獨佔)之間。 |
| NextFloat() |
回傳該隨機數產生器序列中 |
| NextFloat(Single, Single) |
回傳一個從 |
| NextFloat(Single) |
回傳一個從零(包含)到 |
| NextGaussian() |
回傳下一個偽隨機、高斯分布(「常態分布」) |
| NextInt() |
回傳來自此隨機數產生器序列的下一個偽隨機、均勻分布 |
| NextInt(Int32, Int32) |
回傳一個偽隨機選擇的整數值,介於指定原點(包含)與指定界限(獨佔)之間。 |
| NextInt(Int32) |
回傳一個偽隨機、均勻分布 |
| NextLong() |
回傳來自此隨機數產生器序列的下一個偽隨機、均勻分布 |
| NextLong(Int64, Int64) |
回傳一個偽隨機選擇的長值,介於指定原點(包含)與指定界限(獨佔)之間。 |
| NextLong(Int64) |
回傳一個偽隨機選擇的多段值,介於零(包含)與指定界限(獨佔)之間。 |
| Notify() |
喚醒正在等候此物件監視器的單一線程。 (繼承來源 Object) |
| NotifyAll() |
喚醒正在等候此物件監視器的所有線程。 (繼承來源 Object) |
| SetHandle(IntPtr, JniHandleOwnership) |
設定 Handle 屬性。 (繼承來源 Object) |
| SetPeerReference(JniObjectReference, JniObjectReferenceOptions) |
一個隨機數產生器(週期2<>為64</sup>),被隔離於當前執行緒。 (繼承來源 JavaObject) |
| SetSeed(Int64) |
用單一 |
| 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) |
取得實例 |
| JavaAs<TResult>(IJavaPeerable) |
試著強制 |
| JavaCast<TResult>(IJavaObject) |
執行 Android 執行時間檢查的類型轉換。 |
| JavaCast<TResult>(IJavaObject) |
一個隨機數產生器(週期2<>為64</sup>),被隔離於當前執行緒。 |
| TryJavaCast<TResult>(IJavaPeerable, TResult) |
試著強制 |