SObjectizer-5.6.0 : nouvelle version majeure du framework acteur pour C++

SObjectiseur est un framework relativement petit pour simplifier le développement d'applications multithread complexes en C++. SObjectizer permet au développeur de créer ses programmes basés sur une messagerie asynchrone en utilisant des approches telles que Actor Model, Publish-Subscribe et CSP. Il s'agit d'un projet OpenSource sous licence BSD-3-CLAUSE. Une brève impression de SObjectizer peut être formée sur la base de cette présentation.

La version 5.6.0 est la première version majeure de la nouvelle branche SObjectizer-5.6. Ce qui signifie également l'achèvement du développement de la branche SObjectizer-5.5, en développement depuis plus de quatre ans.

Puisque la version 5.6.0 ouvre un nouveau chapitre dans le développement de SObjectizer, il n'y a aucune innovation par rapport à ce qui a été modifié et/ou supprimé de SObjectizer. En particulier:

  • C++17 est utilisé (auparavant, un sous-ensemble de C++11 était utilisé) ;
  • le projet a déménagé et perdure désormais BitBucket avec officiel, non expérimental, miroir sur GitHub;
  • les collaborations d'agents n'ont plus de noms de chaîne ;
  • La prise en charge de l'interaction synchrone entre les agents a été supprimée de SObjectizer (son analogue est implémenté dans le projet qui l'accompagne so5extra);
  • la prise en charge des agents ad hoc a été supprimée ;
  • pour envoyer des messages, seules les fonctions gratuites send, send_delayed, send_periodic sont désormais utilisées (les anciennes méthodes Deliver_message, Schedule_timer, single_timer ont été supprimées de l'API publique) ;
  • les fonctions send_delayed et send_periodic ont désormais le même format quel que soit le type de destinataire du message (qu'il s'agisse d'une mbox, d'une mchain ou d'un lien vers un agent) ;
  • ajout de la classe message_holder_t pour simplifier le travail avec les messages pré-alloués ;
  • supprimé beaucoup de choses qui étaient marquées comme obsolètes dans la branche 5.5 ;
  • Eh bien, et toutes sortes d'autres choses.

Une liste plus détaillée des modifications peut être trouvée ici. Là, dans le wiki du projet, vous pouvez trouver documentation pour la version 5.6.


Les archives avec la nouvelle version de SObjectizer peuvent être téléchargées depuis BitBucket ou SourceForge.


PS. Surtout pour les sceptiques qui pensent que SObjectizer n'est nécessaire à personne et n'est utilisé par personne. Ce pas si.

Source: linux.org.ru

Ajouter un commentaire