SObjectizer je relativně malý framework pro zjednodušení vývoje složitých vícevláknových aplikací v C++. SObjectizer umožňuje vývojářům vytvářet své programy založené na asynchronním zasílání zpráv pomocí přístupů, jako je Actor Model, Publish-Subscribe a CSP. Toto je projekt OpenSource pod licencí BSD-3-CLAUSE. Stručný dojem z SObjectizer lze vytvořit na základě tuto prezentaci.
Verze 5.6.0 je první hlavní vydání nové větve SObjectizer-5.6. Což zároveň znamená dokončení vývoje větve SObjectizer-5.5, která se vyvíjela více než čtyři roky.
Vzhledem k tomu, že verze 5.6.0 otevírá novou kapitolu ve vývoji SObjectizer, nejsou zde vůbec žádné inovace ve srovnání s tím, co bylo změněno a/nebo odstraněno ze SObjectizeru. Zejména:
- používá se C++17 (dříve se používala podmnožina C++11);
- projekt se posunul a nyní žije dál BitBucket s oficiálními, nikoli experimentálními, zrcadlo na GitHubu;
- spolupráce agentů již nemají názvy řetězců;
- Podpora synchronní interakce mezi agenty byla odstraněna z SObjectizer (jeho analog je implementován v doprovodném projektu takže 5 navíc);
- podpora ad-hoc agentů byla odstraněna;
- k odesílání zpráv se nyní používají pouze bezplatné funkce send, send_delayed, send_periodic (staré metody delivery_message, schedule_timer, single_timer byly z veřejného API odstraněny);
- funkce send_delayed a send_periodic nyní mají stejný formát bez ohledu na typ příjemce zprávy (ať už je to mbox, mchain nebo odkaz na agenta);
- přidána třída message_holder_t pro zjednodušení práce s předem přidělenými zprávami;
- odstranilo spoustu věcí, které byly ve větvi 5.5 označeny jako zastaralé;
- No a všechny možné další věci.
Podrobnější seznam změn naleznete zde. Tam, v projektu Wiki, najdete dokumentace pro verzi 5.6.
Archivy s novou verzí SObjectizer lze stáhnout z BitBucket nebo ZdrojForge.
PS. Zejména pro skeptiky, kteří věří, že SObjectizer nikdo nepotřebuje a nikdo ho nepoužívá. Tento ne tak.
Zdroj: linux.org.ru