我只是想知道如何可能ConcurrentDictionary不具有在Visual Studio IDE中可見的Add方法。我似乎只能得到TryX方法,例如TryAdd,TryUpdate等。爲什麼Concurrent Dictionary沒有可見的Add()方法?
我可以看到ConcurrentDictionary
執行IDictionary
,如果我將它轉換爲IDictionary
,我會返回Add方法。
我已經通過iLSpy查看了該類,並且我可以看到添加方法已完全實現,並且確實調用了引擎蓋下的併發TryAdd
方法。
我期待在Add方法上看到某種Attribute來抑制它,但我什麼都看不到。
這是否已由微軟烘焙到IDE中以默認隱藏添加方法?
如果有人能在此提供一些線索我們將不勝感激
+1。知道這個 – AlexFoxGill 2013-04-05 08:27:35
背後的決定會很有意思,謝謝。非常感謝 – 2013-04-05 08:35:57
@AlexG我想這僅僅是因爲你*幾乎*當然不應該使用'Add',如果其他線程可能同時修改同一個字典,很難正確使用它。 – hvd 2013-04-05 08:36:40