Repolode
crossbeam-rs

crossbeam-rs/crossbeam

ロックフリーキュー、work-stealing deque、channel、epochベースのGC、atomic、scoped threadを備えたRustの並行処理ツール群。

スター
8,628
フォーク
589
未解決の Issue
173
最終コミット
23 日前

これは何?

Crossbeamは、並行プログラミングのための部品を提供するRustライブラリです。AtomicCellなどのatomic、bounded・unboundedのMPMCキューを含むロックフリーデータ構造、work-stealing deque、並行データ構造のメモリを安全に解放するためのepochベースのガベージコレクターを備えています。

さらに、メッセージパッシング用のmulti-producer multi-consumer channel、スレッドをparkするプリミティブ、sharded reader-writer lock、計算の区切りで同期するWaitGroup、スタック上のローカル変数を借用できるscoped threadも含まれています。メインのcrateは小さなサブcrateのツールを再エクスポートするため、プロジェクトはcrossbeamパッケージひとつに依存するだけで利用できます。

多くのコンポーネントはno_std環境で利用でき、一部ではalloc featureが必要です。サポート対象となるRustの最低バージョンは1.74です。

主な機能

  • 01ロックフリーのbounded・unbounded MPMCキュー(ArrayQueue、SegQueue)
  • 02タスクスケジューラー構築用のwork-stealing deque
  • 03メッセージパッシング用のmulti-producer multi-consumer channel
  • 04並行データ構造向けのepochベースのガベージコレクション
  • 05atomic、スレッドのpark、sharded RwLock、WaitGroup、scoped thread
  • 06複数のコンポーネントをno_std環境で利用可能

ユースケース

  • work-stealing dequeを使ったマルチスレッドのタスクスケジューラーの構築
  • MPMC channelを使ったスレッド間のメッセージ受け渡し
  • ロックを使わずに複数のproducerとconsumerでキューを共有
  • 現在のスタックフレームのデータを借用するスレッドの起動

クイックスタート

  1. 1

    Cargo.toml に crossbeam を依存関係として追加する

  2. 2

    Cargo で crossbeam の依存関係を追加する

    crossbeam = "0.8"

使う前に知っておきたいこと

  • サポート対象の最小 Rust バージョンは 1.74 です。

トピック

よくある質問

crossbeam とは?
ロックフリーキュー、work-stealing deque、channel、epochベースのGC、atomic、scoped threadを備えたRustの並行処理ツール群。 Crossbeamは、並行プログラミングのための部品を提供するRustライブラリです。AtomicCellなどのatomic、bounded・unboundedのMPMCキューを含むロックフリーデータ構造、work-stealing deque、並行データ構造のメモリを安全に解放するためのepochベースのガベージコレクターを備えています。
crossbeam は無料で使えますか?ライセンスは?
crossbeam は Apache-2.0 ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
crossbeam は今もメンテナンスされていますか?
活発にメンテナンス中。crossbeam の最終コミットは 2026年10月1日 です。
crossbeam は何に使えますか?
work-stealing dequeを使ったマルチスレッドのタスクスケジューラーの構築 MPMC channelを使ったスレッド間のメッセージ受け渡し ロックを使わずに複数のproducerとconsumerでキューを共有 現在のスタックフレームのデータを借用するスレッドの起動
crossbeam のインストール方法は?
Cargo.toml に crossbeam を依存関係として追加する Cargo で crossbeam の依存関係を追加する: crossbeam = "0.8"
crossbeam はどこで入手できますか?
ソースコードとインストール手順は GitHub にあります:https://github.com/crossbeam-rs/crossbeam

概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。

関連プロジェクト