SObjectizer je relatívne malý rámec na zjednodušenie vývoja zložitých viacvláknových aplikácií v C++. SObjectizer umožňuje vývojárom zostavovať svoje programy založené na asynchrónnom zasielaní správ pomocou prístupov, ako je model aktéra, publikovanie-odber a CSP. Toto je projekt OpenSource pod licenciou BSD-3-CLAUSE. Stručný dojem o SObjectizer možno vytvoriť na základe túto prezentáciu.
Verzia 5.6.0 je prvé veľké vydanie novej vetvy SObjectizer-5.6. Čo znamená aj ukončenie vývoja viac ako štyri roky vyvíjajúcej sa vetvy SObjectizer-5.5.
Keďže verzia 5.6.0 otvára novú kapitolu vo vývoji SObjectizer, neexistujú žiadne inovácie v porovnaní s tým, čo bolo zmenené a/alebo odstránené z SObjectizer. Konkrétne:
- používa sa C++17 (predtým sa používala podmnožina C++11);
- projekt sa posunul a teraz žije ďalej BitBucket s oficiálnym, nie experimentálnym, zrkadlo na GitHub;
- spolupráce agentov už nemajú názvy reťazcov;
- Podpora synchrónnej interakcie medzi agentmi bola odstránená zo SObjectizer (jeho analóg je implementovaný v sprievodnom projekte takže 5 navyše);
- podpora ad-hoc agentov bola odstránená;
- na odosielanie správ sa teraz používajú iba bezplatné funkcie send, send_delayed, send_periodic (staré metódy delivery_message, schedule_timer, single_timer boli z verejného API odstránené);
- funkcie send_delayed a send_periodic majú teraz rovnaký formát bez ohľadu na typ príjemcu správy (či je to mbox, mchain alebo odkaz na agenta);
- pridala triedu message_holder_t na zjednodušenie práce s vopred pridelenými správami;
- odstránilo veľa vecí, ktoré boli označené ako zastarané späť vo vetve 5.5;
- No a všeličo iné.
Podrobnejší zoznam zmien nájdete tu. Tam, v projekte Wiki, nájdete dokumentácia pre verziu 5.6.
Archívy s novou verziou SObjectizer si môžete stiahnuť z BitBucket alebo SourceForge.
PS. Najmä pre skeptikov, ktorí veria, že SObjectizer nikto nepotrebuje a nikto ho nepoužíva. Toto nie tak.
Zdroj: linux.org.ru