SObjectizer — je relatívne malý rámec na zjednodušenie vývoja komplexných viacvláknových aplikácií v C++. SObjectizer umožňuje vývojárovi budovať svoje programy na základe asynchrónneho výmeny správ s použitím prístupov ako Model herca, Publish-Subscribe a CSP. Je to projekt OpenSource pod licenciou BSD-3-CLAUSE. Krátke dojmy o SObjectizeri môžeme získať na základe tejto prezentácie.
Verzia 5.6.0 je prvým hlavným vydaním novej vetvy SObjectizer-5.6. Čo tiež znamená ukončenie vývoja vetvy SObjectizer-5.5, ktorá sa vyvíjala viac ako štyri roky.
Keďže verzia 5.6.0 otvára novú kapitolu vývoja SObjectizer, novinky sú celkom neprítomné v porovnaní s tým, čo bolo zmenené a/alebo odstránené zo SObjectizer. Konkrétne:
- používa sa C++17 (predtým sme sa zaobchádzali s podmnožinou C++11);
- projekt sa presťahoval a teraz sídli na BitBucket-e s oficiálnym, nie experimentálnym, zrkadlom na GitHub-e;
- agenti už nemajú reťazcové názvy;
- podpora synchronnej interakcie medzi agentmi bola odstránená zo SObjectizer (jeho analóg je implementovaný v sprievodnom projekte so5extra);
- odstránená podpora ad-hoc agentov;
- na odosielanie správ sa teraz používajú len voľné funkcie send, send_delayed, send_periodic (staré metódy deliver_message, schedule_timer, single_timer z verejného API boli odstránené);
- funkcie send_delayed a send_periodic teraz majú jednotný formát bez ohľadu na typ príjemcu správy (či už ide o mbox, mchain alebo odkaz na agenta);
- pridaná trieda message_holder_t na zjednodušenie práce s prealokovanými správami;
- odstránené množstvo vecí, ktoré boli označené ako deprecated už vo vetve 5.5;
- a ešte rôzne ďalšie veci.
Podrobnejší zoznam zmien nájdete tu. Tam tiež, v Wiki projektu, nájdete dokumentáciu k verzii 5.6.
Archívy s novou verziou SObjectizer si môžete vziať na BitBucket-e alebo na SourceForge.
PS. Špeciálne pre skeptikov, ktorí si myslia, že SObjectizer nie je nikomu potrebný a nikým sa nepoužíva. To nie je pravda.
Zdroj: linux.org.ru
