Здравствуйте, so5team, Вы писали:
S>Вышли очередные версии библиотек SObjectizer и so5extra.
S>...
Большое спасибо что не забросили разработку. Помню что вы ранее писали про определённые сложности.
Здравствуйте, SaZ, Вы писали:
SaZ>Большое спасибо что не забросили разработку. Помню что вы ранее писали про определённые сложности.
Да, временные сложности были временно преодолены
Зафиксирована версия
5.8.1 для SObjectizer и
1.6.1 для so5extra.
Чуть подробнее о том, что было добавлено/исправлено можно прочитать
вот в этой статье. В общем, этот релиз демонстрирует, что если нам сообщить о том, чего вам в SObjectizer не хватает, то со временем это таки может появится
PR в vcpkg и conan для добавления новых версий отправлены, когда их примут предсказать сложно, но со временем эти версии должны стать доступны и через vcpkg/conan.
-----
С большим удовольствием прорекламирую серию статей о SObjectizer, которую начал публиковать Марко Арена (кто-то может знать его по
Italian C++ Community). Найти эту серию можно
в блоге Марко или на сайте
dev.to. Мне самому было очень интересно читать написанные им статьи, как будто смотришь на давно привычные тебе вещи совсем с другой стороны. Так что рекомендую. На данный момент опубликовано три части, но это только начало.
-----
Ну и на правах саморекламы:
изобретаю велосипеды для себя, могу изобрести и для вас.
SObjectizer обновился до версии
5.8.3. Там несколько небольших нововведений и исправлений.
А so5extra обновился до версии
1.6.2 и как раз самое интересное именно в so5extra. Туда был добавлен новый компонент
msg_hierarchy, который позволяет сделать подписку на сообщение базового типа, а получать по этой подписке затем сообщения производных типов.
Кому интересны подробности, то
на Хабре есть статья с описанием этих нововведений и примеры кода их иллюстрирующие.
Здравствуйте, so5team, Вы писали:
S>SObjectizer обновился до версии 5.8.3. Там несколько небольших нововведений и исправлений.
Хочу попробовать использовать вашу библиотеку для своего домашнего проекта. Прочитал кучу статей, для декстоп приложения подходит. Но есть одна задумка, хочется иметь возможность собирать проект под что-то типа stm32 или esp жирные. Оно взлетит? Я видел поддержку Андроид, но этого явно недостаточно. Другие акторные библиотеки смотрел, но что-то там все грустно. Похоже придется городить свои очереди задач наколеночные, но очень не хочется это делать.
Вышла очередная версия библиотеки
SObjectizer.
Подробно об изменениях можно прочитать здесь:
https://github.com/Stiffstream/sobjectizer/wiki/v.5.8.5
Если же кратко о главном, то:
* у агента появился новый метод
so_drop_all_subscriptions_and_filters;
* новая опция
skip_demands_on_dereg для более тонкой настройки агентов;
* для mchain-ов появился
empty_notificator;
* в структуру
so_5::stats::activity_stats_t добавлено новое поле, которое упрощает контроль за временем работы event-handler-ов.
В общем, всего пара новых небольших фич, но отраден сам факт того, что удалось найти время и ресурсы, чтобы воплотить их в жизнь. Т.е. проект живет и продолжает развиваться. В этом, собственно, и вся новость
Для тех, кто не слышал про этот проект, вкратце:
SObjectizer -- это инструмент для упрощения разработки некоторых типов многопоточных приложений на C++. Основная идея в построении приложения из мелких сущностей-агентов (акторов), которые взаимодействуют между собой через обмен сообщениями, а SObjectizer берет на себя:
* доставку сообщений агентам-получателям внутри одного процесса;
* управление рабочими нитями, на которых агенты обрабатывают адресованные им сообщения;
* механизм таймеров (в виде отложенных и периодических сообщений);
* возможности настройки параметров работы перечисленных выше механизмов.
Подробнее о SObjectizer и о том, почему он такой, можно прочитать
здесь.
ЗЫ. А еще в октябре SObjectizer-5 исполнилось пятнадцать лет 🥳