SObjectizer-5.6.0: nova glavna verzija actor framework-a za C++

SObjectizer je relativno mali okvir za pojednostavljenje razvoja složenih višenitnih aplikacija u C++. SObjectizer omogućava programeru da izgradi svoje programe zasnovane na asinhronoj razmjeni poruka koristeći pristupe kao što su Actor Model, Publish-Subscribe i CSP. Ovo je OpenSource projekat pod licencom BSD-3-CLAUSE. Na osnovu toga se može formirati kratak utisak o SObjectizeru ovu prezentaciju.

Verzija 5.6.0 je prvo veliko izdanje nove grane SObjectizer-5.6. Što ujedno znači i završetak razvoja grane SObjectizer-5.5, koja se razvija više od četiri godine.

Pošto verzija 5.6.0 otvara novo poglavlje u razvoju SObjectizera, nema nikakvih inovacija u poređenju sa onim što je promenjeno i/ili uklonjeno iz SObjectizera. posebno:

  • Koristi se C++17 (ranije je korišćen podskup C++11);
  • projekat se preselio i sada živi BitBucket sa službenim, a ne eksperimentalnim, ogledalo na GitHubu;
  • kolaboracije agenata više nemaju nazive nizova;
  • Podrška za sinhronu interakciju između agenata je uklonjena iz SObjectizer-a (njegov analog je implementiran u pratećem projektu so5extra);
  • podrška za ad-hoc agente je uklonjena;
  • za slanje poruka sada se koriste samo besplatne funkcije send, send_delayed, send_periodic (stare metode delivery_message, schedule_timer, single_timer su uklonjene iz javnog API-ja);
  • funkcije send_delayed i send_periodic sada imaju isti format bez obzira na vrstu primaoca poruke (bilo da je u pitanju mbox, mchain ili veza do agenta);
  • dodala klasu message_holder_t radi pojednostavljenja rada sa unaprijed dodijeljenim porukama;
  • uklonjeno mnogo stvari koje su bile označene kao zastarjele natrag u grani 5.5;
  • Pa, i razne druge stvari.

Detaljniju listu izmjena možete pronaći ovdje. Tamo, u projektu Wiki, možete pronaći dokumentaciju za verziju 5.6.


Arhive sa novom verzijom SObjectizera mogu se preuzeti sa BitBucket ili SourceForge.


PS. Posebno za skeptike koji vjeruju da SObjectizer nikome nije potreban i da ga niko ne koristi. Ovo ne na ovaj način.

izvor: linux.org.ru

Dodajte komentar