Среда выполнения параллелизма и координации
Среда выполнения с параллелизмом и координацией (CCR) — это библиотека асинхронного программирования на основе .NET Framework от Microsoft, распространяемая вместе с Microsoft Robotics Developer Studio (MRDS). Несмотря на то, что он поставляется с MRDS, он не ограничивается моделированием поведения роботов, но может использоваться для выражения асинхронного поведения в любом приложении.
Среда выполнения CCR включает в себя Dispatcher
класс, реализующий пул потоков с фиксированным количеством потоков , каждый из которых может выполняться одновременно. Каждый диспетчер включает в себя очередь (называемую DispatcherQueue
) делегатов , которые представляют точку входа в процедуру (называемую рабочим элементом ), которая может выполняться асинхронно. Затем рабочие элементы распределяются по потокам для выполнения. Объект диспетчера также содержит общий Port
это очередь, в которую помещается результат асинхронного выполнения рабочего элемента. Каждый рабочий элемент может быть связан с ReceiverTask
объект, который потребляет результат для дальнейшей обработки. Ан Arbiter
управляет ReceiverTask
и вызывает их, когда ожидаемый результат готов, и помещается на Port
очередь.
В мае 2010 года CCR был доступен вместе со всей студией разработчиков робототехники в одном пакете бесплатно. Microsoft Robotics Developer Studio 2008 R3. [ 1 ]
Последний раз CCR обновлялся в RDS R4 в 2012 году. Он больше не находится в стадии разработки. Асинхронное программирование теперь поддерживается на языках Visual Studio, таких как C#, благодаря встроенным языковым функциям.