語言

IConcurrentMap 介面

定義

Map A 提供執行緒安全與原子性保證。

[Android.Runtime.Register("java/util/concurrent/ConcurrentMap", "", "Java.Util.Concurrent.IConcurrentMapInvoker")]
[Java.Interop.JavaTypeParameters(new System.String[] { "K", "V" })]
public interface IConcurrentMap : IDisposable, Java.Interop.IJavaPeerable, Java.Util.IMap
[<Android.Runtime.Register("java/util/concurrent/ConcurrentMap", "", "Java.Util.Concurrent.IConcurrentMapInvoker")>]
[<Java.Interop.JavaTypeParameters(new System.String[] { "K", "V" })>]
type IConcurrentMap = interface
    interface IMap
    interface IJavaObject
    interface IDisposable
    interface IJavaPeerable
衍生
屬性
實作

備註

Map A 提供執行緒安全與原子性保證。

為維持指定的保證,必須將包含 #putIfAbsent 繼承自 的方法 Map 的預設實作,被此介面的實作覆蓋。 同樣地,集合的實作由方法#keySet#values回傳,且#entrySet必須覆蓋方法,removeIf如必要時以維持原子性保證。

記憶體一致性效應:與其他並行集合一樣,執行緒中在將物件放入 a ConcurrentMap 鍵或值 <i>之前,執行<>緒中的動作發生於該物件ConcurrentMap從另一個執行緒中存取或移除之後的行動。

此介面是 Java 集合框架的成員。

已在1.5中新增。

Java 文件 java.util.concurrent.ConcurrentMap。

此頁面的部分是根據 Android 開放原始碼專案所建立和共用的工作進行修改,並根據 Creative Commons 2.5 屬性授權中所述的詞彙使用。

屬性

名稱 Description
Handle

取得底層 Android 物件的 JNI 值。

(繼承來源 IJavaObject)
IsEmpty

回傳此映射是否為空。

(繼承來源 IMap)
JniIdentityHashCode

回傳包裹實例的 java.lang.System.identityHashCode() 值。

(繼承來源 IJavaPeerable)
JniManagedPeerState

管理貴族的狀況。

(繼承來源 IJavaPeerable)
JniObjectReferenceControlBlock

Map A 提供執行緒安全與原子性保證。

(繼承來源 IJavaPeerable)
JniPeerMembers

成員存取與召喚支援。

(繼承來源 IJavaPeerable)
PeerReference

回傳JniObjectReference包裹後的 Java 物件實例。

(繼承來源 IJavaPeerable)

方法

名稱 Description
Clear()

移除此映射中的所有映射(可選操作)。

(繼承來源 IMap)
Compute(Object, IBiFunction)

嘗試計算指定鍵及其目前映射值的映射,或 null 在沒有當前映射時(可選操作)。

(繼承來源 IMap)
ComputeIfAbsent(Object, IFunction)

若指定的鍵尚未與某值相關聯(或映射至 null),則嘗試使用該映射函數計算其值,並輸入該映射,除非 null (可選操作)。

(繼承來源 IMap)
ComputeIfPresent(Object, IBiFunction)

若指定鍵值存在且非空值,則嘗試根據該鍵及其當前映射值計算新的映射(可選操作)。

(繼承來源 IMap)
ContainsKey(Object)

若此映射包含指定鍵的映射,則回傳 true 。

(繼承來源 IMap)
ContainsValue(Object)

若此映射將一個或多個鍵對應到指定值,則回傳 true 。

(繼承來源 IMap)
Disposed()

當實例被處理後才被召喚。

(繼承來源 IJavaPeerable)
DisposeUnlessReferenced()

如果沒有未解決的參考資料,則 Dispose()呼叫;否則,則不做任何事。

(繼承來源 IJavaPeerable)
EntrySet()

回傳 Set 此地圖中所包含映射的視圖。

(繼承來源 IMap)
Equals(Object)

將指定物件與此映射比較以求相等。

(繼承來源 IMap)
Finalized()

當實例完成後才會被通知。

(繼承來源 IJavaPeerable)
ForEach(IBiConsumer)

對該映射中的每個項目執行指定動作,直到所有項目都處理完畢或該動作拋出例外。

(繼承來源 IMap)
Get(Object)

回傳指定金鑰所映射的值,或 null 若該映射不包含該金鑰的映射,則回傳。

(繼承來源 IMap)
GetHashCode()

回傳此映射的雜湊碼值。

(繼承來源 IMap)
GetOrDefault(Object, Object)

回傳指定金鑰所映射的值,或 defaultValue 若該映射不包含該金鑰的映射,則回傳。

(繼承來源 IMap)
KeySet()

回傳 Set 此映射中所含金鑰的視圖。

(繼承來源 IMap)
Merge(Object, Object, IBiFunction)

如果指定的鍵尚未與某值相關聯或與空值相關聯,則會將其與給定的非空值關聯(可選操作)。

(繼承來源 IMap)
Put(Object, Object)

將指定值與此映射中的指定鍵鍵關聯(可選操作)。

(繼承來源 IMap)
PutAll(IDictionary)

將指定映射中的所有映射複製到該映射(可選操作)。

(繼承來源 IMap)
PutIfAbsent(Object, Object)

如果指定的鍵尚未與某值相關聯,則將其與該值關聯。

Remove(Object, Object)

只有當某個鍵目前映射到某個值時,才會移除該金鑰的條目。

Remove(Object)

若該映射存在,則移除該映射(可選操作)。

(繼承來源 IMap)
Replace(Object, Object, Object)

只有當某個鍵目前被映射到某個值時,才會替換該鍵的條目。

Replace(Object, Object)

只有當某個鍵目前被映射到某個值時,才會替換該鍵的條目。

ReplaceAll(IBiFunction)

將每個項目的值替換為呼叫該該項目的結果,直到所有項目都處理完畢或該函式拋出例外(可選操作)。

(繼承來源 IMap)
SetJniIdentityHashCode(Int32)

將回傳的值設為 JniIdentityHashCode。

(繼承來源 IJavaPeerable)
SetJniManagedPeerState(JniManagedPeerStates)

Map A 提供執行緒安全與原子性保證。

(繼承來源 IJavaPeerable)
SetPeerReference(JniObjectReference)

將回傳的值設為 PeerReference。

(繼承來源 IJavaPeerable)
Size()

回傳此映射中鍵值映射的數量。

(繼承來源 IMap)
UnregisterFromRuntime()

取消註冊此實例,讓執行時不會在未來 Java.Interop.JniRuntime+JniValueManager.PeekValue 的呼叫中回傳該實例。

(繼承來源 IJavaPeerable)
Values()

回傳 Collection 此映射中所含值的視圖。

(繼承來源 IMap)

明確介面實作

名稱 Description
IMap.Compute(Object, IBiFunction)

嘗試計算指定鍵及其當前映射值的映射(若無當前映射則為空值)。

IMap.ComputeIfAbsent(Object, IFunction)

若指定鍵尚未與某值相關聯(或映射為空值),則嘗試使用該映射函數計算該值,並輸入該映射,除非為空值。

IMap.ComputeIfPresent(Object, IBiFunction)

若指定鍵值存在且非空值,則嘗試在該鍵及其當前映射值下計算新的映射。

IMap.ForEach(IBiConsumer)

對該映射中的每個項目執行指定動作,直到所有項目都處理完畢或該動作拋出例外。

IMap.GetOrDefault(Object, Object)

回傳指定鍵對應的值,若該映射無鍵映射,則回傳 defaultValue。

IMap.Merge(Object, Object, IBiFunction)

如果指定的鍵尚未與某值相關聯或與空值相關聯,則會將其與給定的非空值關聯。

IMap.ReplaceAll(IBiFunction)

會用呼叫該項函式的結果替換每個條目的值,直到所有條目都處理完畢或函式拋出例外為止。

擴充方法

名稱 Description
GetJniTypeName(IJavaPeerable)

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

JavaAs<TResult>(IJavaPeerable)

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

JavaCast<TResult>(IJavaObject)

執行 Android 執行時檢查型別轉換。

JavaCast<TResult>(IJavaObject)

Map A 提供執行緒安全與原子性保證。

TryJavaCast<TResult>(IJavaPeerable, TResult)

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

適用於