Concurrency and Coordination Runtime

From Wikipedia, the free encyclopedia

Concurrency and Coordination Runtime (CCR) is an asynchronous programming library based on .Net framework from Microsoft distributed with Microsoft Robotics Studio (MRS). Even though it comes with MRS, it is not limited to modelling robotic behavior but can be used to express asynchronous behavior in any application.

CCR runtime includes a Dispatcher class that implements a Thread pool, with a fixed number of threads, all of which can execute simultaneously. Each dispatcher includes a queue (called DispatcherQueue) of delegates, which represent the entry point to a procedure (called work item) that can be executed asynchronously. The work items are then distributed across the threads for execution. A dispatcher object also contains a generic Port which is a queue where the result of the asynchronous execution of a work item is put. Each work item can be associated with a ReceiverTask object which consumes the result for further processing. An Arbiter manages the ReceiverTask and invokes them when the result they are expecting is ready and put on the Port queue.

[edit] See also

[edit] External links