SObjectizer-5.6.0: nowa wersja główna frameworka aktorowego dla C++

SObjectizer to stosunkowo mały framework, który ułatwia rozwój złożonych aplikacji wielowątkowych w C++. SObjectizer umożliwia programistom budowanie swoich programów w oparciu o asynchroniczną wymianę wiadomości, wykorzystując podejścia takie jak model aktora, publikowanie i subskrypcja oraz CSP. To projekt OpenSource na licencji BSD-3-CLAUSE. Krótkie wrażenie o SObjectizer można zdobyć na podstawie tej prezentacji.

Wersja 5.6.0 jest pierwszym dużym wydaniem nowego odgałęzienia SObjectizer-5.6. Co oznacza również zakończenie rozwoju odgałęzienia SObjectizer-5.5, które rozwijało się przez ponad cztery lata.

Ponieważ wersja 5.6.0 otwiera nowy rozdział w rozwoju SObjectizer, nie ma zupełnie nowych funkcji w porównaniu z tym, co zostało zmienione i/lub usunięte z SObjectizer. W szczególności:

  • jest używany C++17 (wcześniej stosowano podzbiór C++11);
  • projekt przeniósł się i teraz działa na BitBucket z oficjalnym, a nie eksperymentalnym, lustrzanym odbiciem na GitHubie;
  • agenci nie mają już nazw stringowych;
  • wsparcie dla synchronizacji między agentami zostało usunięte (jego odpowiednik został wdrożony w towarzyszącym projekcie so5extra);
  • usunięto wsparcie dla ad-hoc agentów;
  • do przesyłania wiadomości używane są teraz tylko wolne funkcje send, send_delayed, send_periodic (stare metody deliver_message, schedule_timer, single_timer z publicznego API zostały usunięte);
  • funkcje send_delayed i send_periodic mają teraz jednolity format, niezależnie od typu odbiorcy wiadomości (czy to mbox, mchain czy referencja do agenta);
  • dodano klasę message_holder_t, aby uprościć pracę z prealokowanymi wiadomościami;
  • usunięto wiele rzeczy, które były oznaczone jako deprecated jeszcze w odgałęzieniu 5.5;
  • no i jeszcze różne inne.

Bardziej szczegółową listę zmian można znaleźć tutaj. Tam również, w Wiki projektu, można znaleźć dokumentację do wersji 5.6.


Archiwum z nową wersją SObjectizer można pobrać na BitBucket lub na SourceForge.


PS. Specjalnie dla sceptyków, którzy uważają, że SObjectizer nikomu nie jest potrzebny i nikt go nie używa. To nieprawda.

Źródło: linux.org.ru

Kup solidny hosting stron z ochroną przed DDoS, serwery VPS VDS 🔥 Kup solidny hosting stron z ochroną przed DDoS, serwery VPS VDS | ProHoster