Imports System.Collections.Concurrent
Imports System.Runtime.CompilerServices
Public Module ConcurrentDictionaryHelper
''' <summary>
''' 添加数据
''' </summary>
''' <typeparam name="TKey"></typeparam>
''' <typeparam name="TValue"></typeparam>
''' <param name="csConcurrentDictionary"></param>
''' <param name="key"></param>
''' <param name="value"></param>
''' <returns></returns>
<Extension>
Public Function Add(Of TKey, TValue)(ByVal csConcurrentDictionary As ConcurrentDictionary(Of TKey, TValue), key As TKey, value As TValue) As Boolean
While Not csConcurrentDictionary.TryAdd(key, value)
Threading.Thread.Sleep(1)
End While
Return True
End Function
''' <summary>
''' 移除数据
''' </summary>
''' <typeparam name="TKey"></typeparam>
''' <typeparam name="TValue"></typeparam>
''' <param name="csConcurrentDictionary"></param>
''' <param name="key"></param>
''' <param name="value"></param>
''' <returns></returns>
<Extension>
Public Function Remove(Of TKey, TValue)(ByVal csConcurrentDictionary As ConcurrentDictionary(Of TKey, TValue), key As TKey, value As TValue) As TValue
While Not csConcurrentDictionary.TryRemove(key, value)
Threading.Thread.Sleep(1)
End While
Return value
End Function
End Module