ConcurrentSkipListMap 類別
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
可調整的並行 ConcurrentNavigableMap
實作。
[Android.Runtime.Register("java/util/concurrent/ConcurrentSkipListMap", DoNotGenerateAcw=true)]
[Java.Interop.JavaTypeParameters(new System.String[] { "K", "V" })]
public class ConcurrentSkipListMap : Java.Util.AbstractMap, IDisposable, Java.Interop.IJavaPeerable, Java.IO.ISerializable, Java.Lang.ICloneable
[<Android.Runtime.Register("java/util/concurrent/ConcurrentSkipListMap", DoNotGenerateAcw=true)>]
[<Java.Interop.JavaTypeParameters(new System.String[] { "K", "V" })>]
type ConcurrentSkipListMap = class
inherit AbstractMap
interface ISerializable
interface IJavaObject
interface IDisposable
interface IJavaPeerable
interface ICloneable
- 繼承
- 屬性
- 實作
備註
可調整的並行 ConcurrentNavigableMap
實作。 根據索引鍵的比較自然順序,或 Comparator
根據使用的建構函式而定,對應會根據在地圖建立時間提供的 排序。
這個類別會實作 SkipLists 的並行變體,以提供 、 和 put
remove
作業及其變體的預期平均記錄 (n 個) 時間成本 containsKey
get
。 插入、移除、更新和存取作業可安全地由多個執行緒同時執行。
反覆運算器和分割器是 < i > 弱式一致 < /i > 。
遞增索引鍵排序檢視及其反覆運算器的速度會比遞減檢視更快。
這個類別中方法所傳回的所有 Map.Entry
配對及其檢視都代表產生時對應的快照集。 它們不會 <<>Entry.setValue
支援 > 方法。 (請注意,您可以使用 、 putIfAbsent
或 replace
來變更關聯對應 put
中的對應,視您需要的效果而定。)
請注意,大量作業 putAll
、 equals
、 toArray
、 containsValue
和 clear
不 <<>> 保證會以不可部分完成的方式執行。 例如,與作業同時運作的 putAll
反覆運算器可能只會檢視一些新增的專案。
這個類別及其檢視和反覆運算器會實作 和 Iterator
介面的所有 < em > 選擇性 < /em > 方法 Map
。 如同其他大部分的並行集合,這個類別 <> 不會 <> 允許使用 null
索引鍵或值,因為某些 Null 傳回值無法可靠地與缺少專案區別。
這個類別是 JAVA Collections Framework的成員。
已在 1.6 中新增。
的 java.util.concurrent.ConcurrentSkipListMap
JAVA 檔。
此頁面的部分是根據 原始碼專案所建立和共用的工作進行修改,並根據中所述的詞彙使用。
建構函式
ConcurrentSkipListMap() |
根據索引鍵的可比較自然順序,建構新的空白對應。 |
ConcurrentSkipListMap(IComparator) |
根據指定的比較子,建構新的空白對應。 |
ConcurrentSkipListMap(IDictionary) |
建構新的對應,其中包含與指定地圖相同的對應,並根據索引鍵的可比較自然順序排序。 |
ConcurrentSkipListMap(IntPtr, JniHandleOwnership) |
建立 JNI 物件的 Managed 標記法時所使用的建構函式;由執行時間呼叫。 |
屬性
Class |
傳回這個 |
Handle |
基礎 Android 實例的控制碼。 (繼承來源 Object) |
IsEmpty |
要新增 (繼承來源 AbstractMap) |
JniIdentityHashCode |
可調整的並行 |
JniPeerMembers |
可調整的並行 |
PeerReference |
可調整的並行 |
ThresholdClass |
此 API 支援 Mono for Android 基礎結構,並不適合直接從您的程式碼使用。 |
ThresholdType |
此 API 支援 Mono for Android 基礎結構,並不適合直接從您的程式碼使用。 |
方法
CeilingEntry(Object) |
傳回與小於或等於指定索引鍵之最小索引鍵關聯的索引鍵/值對應,如果沒有這類專案,則 |
CeilingKey(Object) |
可調整的並行 |
Clear() |
要新增 (繼承來源 AbstractMap) |
Clone() |
傳回這個 |
Comparator() |
傳回用來比較這個排序對應中索引鍵的比較子,如果自然順序正在使用中,則傳回 null。 |
Compute(Object, IBiFunction) |
嘗試計算指定索引鍵的對應及其目前對應值 (,或者 |
ComputeIfAbsent(Object, IFunction) |
如果指定的索引鍵尚未與值相關聯,請嘗試使用指定的對應函式來計算其值,並輸入到這個對應中,除非 。 |
ComputeIfPresent(Object, IBiFunction) |
如果指定的索引鍵值存在,則嘗試計算指定的索引鍵及其目前對應值的新對應。 |
ContainsKey(Object) |
要新增 (繼承來源 AbstractMap) |
ContainsValue(Object) |
要新增 (繼承來源 AbstractMap) |
DescendingKeySet() |
傳回這個對應中包含的索引鍵反向順序 INavigableSet 檢視。 |
Dispose() |
可調整的並行 |
Dispose(Boolean) |
可調整的並行 |
EntrySet() |
|
Equals(Object) |
指出其他物件是否「等於」這個物件。 (繼承來源 Object) |
FirstEntry() |
傳回與此對應中最小索引鍵相關聯的索引鍵/值對應,如果對應是空的,則 |
FirstKey() |
傳回這個排序對應中的最小索引鍵。 |
FloorEntry(Object) |
傳回與小於或等於指定索引鍵之最大索引鍵相關聯的索引鍵/值對應,如果沒有這類索引鍵,則 |
FloorKey(Object) |
可調整的並行 |
ForEach(IBiConsumer) |
可調整的並行 |
Get(Object) |
要新增 (繼承來源 AbstractMap) |
GetHashCode() |
傳回此物件的雜湊碼值。 (繼承來源 Object) |
GetOrDefault(Object, Object) |
傳回指定索引鍵所對應的值,如果這個對應不包含索引鍵的對應,則傳回指定的 defaultValue。 |
HigherEntry(Object) |
傳回與最小索引鍵嚴格大於指定索引鍵的索引鍵/值對應,如果沒有這類索引鍵,則 |
HigherKey(Object) |
可調整的並行 |
JavaFinalize() |
當垃圾收集判斷物件沒有其他參考時,由物件上的垃圾收集行程呼叫。 (繼承來源 Object) |
KeySet() |
要新增 (繼承來源 AbstractMap) |
LastEntry() |
傳回與此對應中最大索引鍵相關聯的索引鍵/值對應,如果對應是空的,則 |
LastKey() |
傳回這個排序的對應中最大的索引鍵。 |
LowerEntry(Object) |
傳回與最大索引鍵嚴格小於指定索引鍵的索引鍵/值對應,如果沒有這類索引鍵,則 |
LowerKey(Object) |
可調整的並行 |
Merge(Object, Object, IBiFunction) |
如果指定的索引鍵尚未與值相關聯,請將它與指定的值產生關聯。 |
NavigableKeySet() |
INavigableSet傳回這個對應中包含的索引鍵檢視。 |
Notify() |
喚醒正在等候此物件的監視器的單一線程。 (繼承來源 Object) |
NotifyAll() |
喚醒正在等候此物件監視器的所有線程。 (繼承來源 Object) |
PollFirstEntry() |
移除並傳回與此對應中最小索引鍵相關聯的索引鍵/值對應,如果 |
PollLastEntry() |
移除並傳回與此對應中最大索引鍵相關聯的索引鍵/值對應,如果 |
Put(Object, Object) |
要新增 (繼承來源 AbstractMap) |
PutAll(IDictionary) |
要新增 (繼承來源 AbstractMap) |
PutIfAbsent(Object, Object) |
要新增 |
Remove(Object) |
要新增 (繼承來源 AbstractMap) |
Remove(Object, Object) |
要新增 |
Replace(Object, Object) |
要新增 |
Replace(Object, Object, Object) |
要新增 |
ReplaceAll(IBiFunction) |
可調整的並行 |
SetHandle(IntPtr, JniHandleOwnership) |
設定 Handle 屬性。 (繼承來源 Object) |
Size() |
要新增 (繼承來源 AbstractMap) |
ToArray<T>() |
可調整的並行 |
ToString() |
傳回物件的字串表示。 (繼承來源 Object) |
UnregisterFromRuntime() |
可調整的並行 |
Values() |
要新增 (繼承來源 AbstractMap) |
Wait() |
讓目前的執行緒等到喚醒為止,通常是藉由 < em > notified < /em > 或 < em > interrupted < /em > 來喚醒。 (繼承來源 Object) |
Wait(Int64) |
讓目前的執行緒等到喚醒為止,通常是 < 透過 em > notified < /em 或 em > interrupted < /em >> ,或 < 直到經過一定數量的即時為止。 (繼承來源 Object) |
Wait(Int64, Int32) |
讓目前的執行緒等到喚醒為止,通常是 < 透過 em > notified < /em 或 em > interrupted < /em >> ,或 < 直到經過一定數量的即時為止。 (繼承來源 Object) |
明確介面實作
IJavaPeerable.Disposed() |
可調整的並行 |
IJavaPeerable.DisposeUnlessReferenced() |
可調整的並行 |
IJavaPeerable.Finalized() |
可調整的並行 |
IJavaPeerable.JniManagedPeerState |
可調整的並行 |
IJavaPeerable.SetJniIdentityHashCode(Int32) |
可調整的並行 |
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates) |
可調整的並行 |
IJavaPeerable.SetPeerReference(JniObjectReference) |
可調整的並行 |
擴充方法
JavaCast<TResult>(IJavaObject) |
執行 Android 執行時間檢查的類型轉換。 |
JavaCast<TResult>(IJavaObject) |
可調整的並行 |
GetJniTypeName(IJavaPeerable) |
可調整的並行 |