Crossbeam-rsRust 并发库

联合创作 · 2023-09-29 12:06

Crossbeam 是一款 Rust 并发库,提供了一系列用于并发编程的工具:

Atomics

  • AtomicCell, 线程安全的可变内存位置 (no_std)
  • AtomicConsume, 用于从具有"consume"顺序的原始原子类型中读取 (no_std)

数据结构

  • deque, 用于构建任务调度程序的 work-stealing 双端队列
  • ArrayQueue, 有界 MPMC 队列,在构造时分配一个固定容量的缓冲区 (alloc)
  • SegQueue, 无界 MPMC 队列,按需分配小的缓冲区、段 (alloc)

内存管理

  • epoch, 基于 epoch 的垃圾回收器 (alloc)

线程同步

  • channel, 使用多生产者多消费者渠道进行消息传递
  • Parker, a thread parking primitive.
  • ShardedLock, 具有快速并发读取的分片读写锁 (reader-writer lock)
  • WaitGroup, 用于同步某些计算的开始或结束
浏览 6
点赞
评论
收藏
分享

手机扫一扫分享

编辑 分享
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

编辑 分享
举报