【C#】线程安全的集合
System.Collections.Concurrent 命名空间
提供多个线程安全集合类,只要多个线程同时访问集合,就应使用这些类来代替System.Collections 和 System.Collections.Generic 命名空间中的相应类型。 但是,不保证通过扩展方法或通过显式接口实现访问集合对象是线程安全的,可能需要由调用方进行同步。
类
类 | 说明 |
---|---|
BlockingCollection<T> | 为实现 IProducerConsumerCollection<T> 的线程安全集合提供阻塞和限制功能。 |
ConcurrentBag<T> | 表示对象的线程安全的无序集合。 |
ConcurrentDictionary<TKey, TValue> | 表示可由多个线程同时访问的键值对的线程安全集合。 |
ConcurrentQueue<T> | 表示线程安全的先进先出 (FIFO) 集合。 |
ConcurrentStack<T> | 表示线程安全的后进先出 (LIFO) 集合。 |
OrderablePartitioner<TSource> | 表示将一个可排序数据源拆分成多个分区的特定方式。 |
Partitioner | 提供针对数组、列表和可枚举项的常见分区策略。 |
Partitioner<TSource> | 表示将一个数据源拆分成多个分区的特定方式。 |
接口
接口 | 说明 |
---|---|
IProducerConsumerCollection | 定义供制造者/使用者用来操作线程安全集合的方法。 此接口提供一个统一的表示(为生产者/消费者集合),从而更高级别抽象如 BlockingCollection 可以使用集合作为基础的存储机制。 |
枚举
枚举 | 说明 |
---|---|
EnumerablePartitionerOptions | 指定控制分区程序的缓冲行为的选项。 |
【C#】线程安全的集合相关推荐
- Java——线程安全的集合
线程安全的集合 java.util.concurrent包:ConcurrentHashMap,ConcurrentSkipListMap,ConcurrentSkipListSet,Conc ...
- Java多线程:线程安全和非线程安全的集合对象
转载自 Java多线程:线程安全和非线程安全的集合对象 一.概念: 线程安全:就是当多线程访问时,采用了加锁的机制:即当一个线程访问该类的某个数据时,会对这个数据进行保护,其他线程不能对其访问,直到 ...
- Java核心技术 卷1 多线程----线程安全的集合(4)
如果多线程要并发的修改一个数据结构,例如散列表,那么很容易会破坏这个数据结构.一个线程可能要开始向表中插入一个新元素.假定在调整散列表各个桶之间的链接关系的过程中,被剥夺了控制权.如果另一个线程也开始 ...
- Java学习day096 并发(六)(线程安全的集合:高效的映射、集和队列、映射条目的原子更新、对并发散列映射的批操作、并发集视图、写数组的拷贝、并行数组算法、较早的线程安全集合)
使用的教材是java核心技术卷1,我将跟着这本书的章节同时配合视频资源来进行学习基础java知识. day096 并发(六)(线程安全的集合:高效的映射.集和队列.映射条目的原子更新.对并发散列映 ...
- Java 线程安全的集合
Java 线程安全的集合 一.早期线程安全的集合 1.Vector 2.HashTable 二.Collections 包装方法 三.java.util.concurrent 包中的集合 1.Conc ...
- Java中,通过synchronizedXxx()将线程不安全的集合转换成线程安全的集合
保证线程安全的方法 synchronizedXxx():该方法可以使指定的集合包装成线程安全的集合,并返回 例如: Collections.synchronizedList(List) 将线程不安全的 ...
- 面试:线程安全的集合
线程安全的集合: 线程安全的集合有Vector.HashTable.Stack.ArrayBlockingQueue.ConcurrentHashMap.ConcurrentLinkedQueue等. ...
- 多线程(4)线程安全的集合
目录 一.线程安全的集合 二.高效的映射.集合和队列 1.ConcurrentHashMap 2.ConcurrentSkipListMap 三.写数组的拷贝 四.旧的线程安全的集合 一.线程安全的集 ...
- Java线程安全的集合
前言 线程安全集合是指该集合可以在多线程并发读取的状态下,能够保持数据集合有序,不发生同步错误. 一.早期的线程安全集合 我们先说早期的线程安全集合,也是各种面试题或者考试题经常喜欢问的,它们是Vec ...
- Java线程安全的集合详解
一.早期线程安全的集合 我们先从早期的线程安全的集合说起,它们是Vector和HashTable 1.Vector Vector和ArrayList类似,是长度可变的数组,与ArrayList不同的是 ...
最新文章
- If-Modified-Since和If-None-Match
- Android中将布局文件/View添加至窗口过程分析 ---- 从setContentView()谈起
- Java工程师之SpringBoot系列教程前言目录
- 【NLP】从整体视角了解情感分析、文本分类!
- 获取版本号_Windows 10 2004迎来KB4577063更新 版本号升至19041.546
- 34.rust宏.txt
- apk当安装程序将文件复制到手机自带的指定文件夹
- extjs中滚动条属性_36个工作中常用的JavaScript函数片段「值得收藏」
- PHP中输出本地时间
- win11如何退出磁贴桌面 Windows11退出磁贴桌面的设置方法
- ireport 3.6.0 增加PDF字体、加粗失效、PDF中文不显示等问题
- Typecho后台美化插件 TypechoOneAdmin
- 直播预告 | 染色质免疫共沉淀(ChIP-seq)应用实例分析(表观调控和转录调控)
- 【其它】颜色的知识--亮度、色相、饱和度、对比度
- Java秒杀系统实战系列~数据库级别Sql的优化与代码的调整
- 高性能Excel操作工具
- 阿里云的mysql问题
- 网络爬虫学习第一弹:urllib库使用
- 轻松识别文字,这款Python OCR库支持超过80种语言
- 织梦友情链接加nofollow方法,亲测