Repolode
tokio-rs

tokio-rs/tokio

信頼性の高いネットワークアプリケーションの構築に役立つ、タスクスケジューリング、ノンブロッキングI/O、ネットワーク、タイマーを提供するRust向け非同期ランタイムです。

スター
33,502
フォーク
5,781
未解決の Issue
440
最終コミット
10 時間前

これは何?

Tokioは、Rustで非同期アプリケーションを開発するためのイベント駆動型ノンブロッキングI/Oプラットフォームです。マルチスレッドのワークスティーリング型タスクスケジューラ、OSのイベントキュー(epoll、kqueue、IOCPなど)を利用するリアクター、非同期TCP・UDPソケットをまとめて提供します。

スレッドを接続ごとに割り当てずに、多数の接続を同時に処理したいネットワークサービスや、I/O負荷の高いプログラムの開発者を対象としています。アプリケーションでは必要な機能フラグを有効にし、ランタイムのspawn、タイマー、同期プリミティブとasync/awaitを組み合わせて利用します。

このプロジェクトは、Webフレームワークのaxum、HTTP実装のhyper、gRPCライブラリのtonic、ミドルウェア抽象化のtower、診断フレームワークのtracingなどを含む、より広いエコシステムの一部です。

主な機能

  • 01マルチスレッドのワークスティーリング型タスクスケジューラ
  • 02ノンブロッキングTCP・UDPソケット
  • 03epoll、kqueue、IOCPを基盤とするリアクター
  • 04タイマーと非同期同期プリミティブ
  • 05機能フラグにより、必要なコンポーネントだけをプロジェクトに含められる

ユースケース

  • Rustで高い同時接続数に対応するTCP・UDPネットワークサーバーを構築する
  • 多数のサービスを並行して呼び出す非同期クライアントを開発する
  • タイマーやキャンセル機能を使い、I/O負荷の高いバックグラウンドタスクを実行する

クイックスタート

  1. 1

    Cargo.toml に Tokio をすべての機能とともに追加します

    tokio = { version = "1.54.1", features = ["full"] }
  2. 2

    main.rs に TCP エコーサーバーの例を書き、cargo でプロジェクトを実行します

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

  • Rust ツールチェーンが必要です。サポートされる Rust の最小バージョンは 1.85 です。
  • Tokio はランタイムライブラリのため、自分でビルドする Rust プロジェクト内でのみ使用できます。

トピック

よくある質問

tokio とは?
信頼性の高いネットワークアプリケーションの構築に役立つ、タスクスケジューリング、ノンブロッキングI/O、ネットワーク、タイマーを提供するRust向け非同期ランタイムです。 Tokioは、Rustで非同期アプリケーションを開発するためのイベント駆動型ノンブロッキングI/Oプラットフォームです。マルチスレッドのワークスティーリング型タスクスケジューラ、OSのイベントキュー(epoll、kqueue、IOCPなど)を利用するリアクター、非同期TCP・UDPソケットをまとめて提供します。
tokio は無料で使えますか?ライセンスは?
tokio は MIT ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
tokio は今もメンテナンスされていますか?
活発にメンテナンス中。tokio の最終コミットは 2026年10月24日 です。
tokio は何に使えますか?
Rustで高い同時接続数に対応するTCP・UDPネットワークサーバーを構築する 多数のサービスを並行して呼び出す非同期クライアントを開発する タイマーやキャンセル機能を使い、I/O負荷の高いバックグラウンドタスクを実行する
tokio のインストール方法は?
Cargo.toml に Tokio をすべての機能とともに追加します: tokio = { version = "1.54.1", features = ["full"] } main.rs に TCP エコーサーバーの例を書き、cargo でプロジェクトを実行します
tokio はどこで入手できますか?
ソースコードとインストール手順は GitHub にあります:https://github.com/tokio-rs/tokio

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

関連プロジェクト