Concurrency and Coordination Runtime

出典: フリー百科事典『ウィキペディア(Wikipedia)』

これはこのページの過去の版です。Slappi (会話 | 投稿記録) による 2020年3月6日 (金) 14:40個人設定で未設定ならUTC)時点の版であり、現在の版とは大きく異なる場合があります。

Concurrency and Coordination Runtime (CCR)とは、マイクロソフトレゴマインドストームなどのロボット制御プログラミング向けに配布しているMicrosoft Robotics Developer Studio (MRDS)の一部で、.NET Frameworkをベースとした非同期プログラミングライブラリである。MRDSの一部として配布されているが、ロボット制御に特化されているわけではなく、一般的なアプリケーション用の非同期プログラミングライブラリとしても利用できる。CCRはErlangの影響が極めて強く受けており、用語こそ違えど基本的な考え方はほぼ同一である。

CCRのランタイムには、同時実行できるスレッド数が固定されたスレッドプールを実装するDispatcherクラスが含まれている。また、各DispatcherにはDispatcherQueueというプロシージャのエントリポイントを示すデリゲートのキューを持っており(CCRで分散処理したい作業項目の一覧を持っており)、作業項目は実行スレッドに分散され非同期実行される。またDispatcherオブジェクトには作業項目を非同期実行した結果を入れる汎用ポートと呼ばれるキューも存在している。各作業項目は、処理結果を消費するReceiverTaskオブジェクトに関連付けることができる。Arbiter ReceiverTaskを管理し、彼らを期待して準備ができてとする場合、それらを呼び出すPortのキュー。

関連項目

脚注


参考文献

外部リンク