Körtid för samtidighet och koordinering

Concurrency and Coordination Runtime (CCR) är ett asynkront programmeringsbibliotek baserat på .NET Framework från Microsoft distribuerat med Microsoft Robotics Developer Studio (MRDS). Även om det kommer med MRDS är det inte begränsat till att modellera robotbeteende utan kan användas för att uttrycka asynkront beteende i alla applikationer.

CCR runtime inkluderar en Dispatcher- klass som implementerar en trådpool, med ett fast antal trådar , som alla kan köras samtidigt. Varje dispatcher inkluderar en kö (kallad DispatcherQueue ) av delegater , som representerar ingångspunkten till en procedur (kallad arbetsobjekt ) som kan köras asynkront. Arbetsartiklarna fördelas sedan över trådarna för utförande. Ett dispatcherobjekt innehåller också en generisk port som är en kö där resultatet av den asynkrona exekveringen av ett arbetsobjekt läggs. Varje arbetsobjekt kan associeras med ett ReceiverTask- objekt som förbrukar resultatet för vidare bearbetning. En skiljedomare hanterar ReceiverTask och anropar dem när resultatet de förväntar sig är klart och läggs i Port- kön.

I maj 2010 gjordes CCR tillgänglig tillsammans med hela Robotics Developer Studio i ett paket, gratis. Microsoft Robotics Developer Studio 2008 R3.

CCR uppdaterades senast i RDS R4 2012. Det är inte längre under utveckling. Asynkron programmering stöds nu i Visual Studio-språk som C# genom inbyggda språkfunktioner.

Se även

externa länkar