Dictionary选型

Dictionary FrozenDictionary ReadOnlyDictionary ConcurrentDictinary

ConcurrentDictinary

如果会多线程更改字典,那必须要使用ConcurrentDictinary。

注意:不仅增删字典元素是线程不安全的,即便只更新字典中肯定存在的Key的Value也不是线程安全的!
更新Key的Value并不是简单的定位到key对应的Value引用完成原子赋值,因为字典的Value是一个哈希桶(链表),更新值

并发改时,安全字典

并发改包括,增删元素,更新Value.

注意:更新value也是线程不安全的,即使一个字典被创建后永远不进行增删元素,每次更新值时键都存在,也不是线程安全的操作,因为要维护哈希桶的索引。

FrozenDictionary

创建成本高,适合花成本一次创造,后续高频率使用

ReadOnlyDictionary

字典的视图。不能增删元素和更新Value. 作为返回的API供外界查看元素但是防止误修改。

posted @ 2025-11-06 23:33  ValueLee  阅读(5)  评论(0)    收藏  举报