SObjectizer è un framework relativamente leggero per semplificare lo sviluppo di complesse applicazioni multithreading in C++. SObjectizer consente agli sviluppatori di costruire le proprie applicazioni basandosi su uno scambio di messaggi asincrono, utilizzando approcci come Actor Model, Publish-Subscribe e CSP. È un progetto OpenSource sotto licenza BSD-3-CLAUSE. Una breve impressione su SObjectizer può essere ottenuta a partire da questa presentazione.
La versione 5.6.0 è il primo rilascio principale del nuovo ramo SObjectizer-5.6. Ciò significa anche il termine dello sviluppo del ramo SObjectizer-5.5, che è stato attivo per oltre quattro anni.
Poiché la versione 5.6.0 apre un nuovo capitolo nello sviluppo di SObjectizer, non ci sono innovative introdotte rispetto a quanto modificato e/o rimosso da SObjectizer. In particolare:
- si utilizza C++17 (prima si usava un sottoinsieme di C++11);
- il progetto è stato trasferito e ora vive su BitBucket con un mirror ufficiale e non sperimentale su GitHub; le cooperative di agenti non hanno più nomi stringa;;
- è stata rimossa la supporto per interazioni sincrone tra agenti (la sua controparte è implementata nel progetto correlato
- so5extra è stato rimosso il supporto per agenti ad hoc;);
- per l'invio di messaggi si utilizzano ora solo funzioni libere send, send_delayed, send_periodic (i vecchi metodi deliver_message, schedule_timer, single_timer sono stati rimossi dall'API pubblica);
- le funzioni send_delayed e send_periodic ora hanno un formato unico indipendentemente dal tipo di destinatario del messaggio (sia che si tratti di mbox, mchain o un riferimento all'agente);
- è stata aggiunta la classe message_holder_t per semplificare il lavoro con messaggi pre-allocati;
- sono stati rimossi molti elementi che erano contrassegnati come obsoleti già nel ramo 5.5;
- e infine varie altre cose.
- Un elenco più dettagliato delle modifiche può essere trovato
. Lì, nella Wiki del progetto, puoi trovare quidocumentazione per la versione 5.6 Gli archivi con la nuova versione di SObjectizer possono essere scaricati da.
PS. Specificamente per gli scettici che pensano che SObjectizer non sia necessario e non venga utilizzato da nessuno. È BitBucket o su SourceForge.
non così O della birra vista da un chimico. Parte 1.
Fonte: linux.org.ru
