rust-async-patterns
非同期Rustパターンを素早く学ぶ
非同期Rustは構造化しにくく、デバッグが難しい場合があります。このスキルは、Tokioタスク、チャネル、ストリーム、およびエラーに対する明確なパターンを提供します。
スキルZIPをダウンロード
Claudeでアップロード
設定 → 機能 → スキル → スキルをアップロードへ移動
オンにして利用開始
テストする
「rust-async-patterns」を使用しています。 Explain how to limit concurrency for async HTTP requests in Tokio.
期待される結果:
- URL上のストリームを使用し、buffer_unorderedを制限付きで適用する
- 結果を収集し、リクエストごとにエラーを処理する
- 無制限の生成を避け、メモリとソケットを保護する
「rust-async-patterns」を使用しています。 Show me how to coordinate between async tasks using channels.
期待される結果:
- プロデューサーとコンシューマー間の1対1通信にmpsc::channelを使用する
- 複数のコンシューマーが同じメッセージを必要とする場合にbroadcast::channelを使用する
- 生成されたタスクから単一の応答が必要な場合にoneshot::channelを使用する
「rust-async-patterns」を使用しています。 How do I handle errors in async Rust code properly?
期待される結果:
- anyworkを使用してコンテキストチェーンによるアプリケーションレベルのエラーを処理する
- thiserrorを使用してライブラリコードにカスタムエラータイプを作成する
- 無期限のハングを防ぐために操作をタイムアウトでラップする
セキュリティ監査
安全Pure educational documentation containing Rust async programming examples. All static findings are false positives: 'process spawn' refers to tokio::spawn for async task management (not command execution), 'backtick execution' refers to markdown code formatting, and 'weak cryptographic algorithm' refers to keywords in documentation fields. The skill contains no tool definitions, file access, network calls, or command execution capabilities.
リスク要因
🌐 ネットワークアクセス (6)
⚙️ 外部コマンド (39)
品質スコア
作れるもの
同時実行サービスの構築
非同期Rustサービスにおけるタスクオーケストレーション、エラー処理、およびシャットダウンの構造化されたパターンを適用する。
非同期デッドロックのデバッグ
tracingガイダンスと一般的な落とし穴を使用して、スタックしたタスクやロックの誤用を診断する。
非同期概念の学習
短くて焦点を当てた例で、futures、await、ストリーム、およびチャネルを学ぶ。
これらのプロンプトを試す
tracing付きのシンプルなTokio非同期main例と、シミュレートされた非同期呼び出しを提供してください。各ステップを1文で説明すること。
URLのリストに対してTokioまたはfuturesストリームを使用して、同時実行される非同期タスクを制限するパターンを示すこと。
CancellationTokenとシャットダウンbroadcastチャネルを使用したグレースフルシャットダウンのアプローチを説明すること。
get、save、deleteを持つリポジトリの非同期traitデザインと、traitオブジェクトの使用に関するメモを提供すること。
ベストプラクティス
- tokio::select!を使用してfuturesを安全に競合させる
- 共有可能な可変状態よりもチャネルを協調に使用することを優先する
- 観察可能性のために非同期タスクにtracingを инструメント化する
回避
- 非同期コードでstd::thread::sleepなどのブロック関数を呼び出す
- awaitポイント間でmutexまたはrwlockガードを保持する
- 同時実行制限なしで無制限のタスクを生成する
よくある質問
現在のTokioバージョンと互換性がありますか?
完全なアプリケーションコードを生成しますか?
既存のリポジトリで使用できますか?
データにアクセスしたり保存したりしますか?
非同期コードがまだハングする場合はどうなりますか?
一般的な非同期ガイドとどう違いますか?
開発者の詳細
作成者
wshobsonライセンス
MIT
リポジトリ
https://github.com/wshobson/agents/tree/main/plugins/systems-programming/skills/rust-async-patterns参照
main
ファイル構成
📄 SKILL.md