Когда мы начали рассказывать про свой OpenSource акторный фреймворк для C++ на Хабре, мы пообещали описывать некоторые особенности деталей реализации SObjectizer-а. Одна из новых фич, которая была реализована [в недавно вышедшей версии 5.5.19][1], отлично подходит для такого рассказа. Кроме того, она интересна еще и тем, что нам пришлось взглянуть на сценарии использования SObjectizer с совершенно другой стороны. Можно даже сказать, что один из наших шаблонов оказался разорванным.
Речь идет о возможности SObjectizer-а выполнять все свои действия на одной единственной рабочей нити. Начиная с версии 5.5.19 использовать Actor- и Publish/Subscribe модели можно даже в однопоточном приложении. Понятное дело, что акторы должны будут работать в режиме кооперативной многозадачности, но в каких-то случаях именно это и требуется.
[Читать дальше →][2]
[1]:
https://sourceforge.net/p/sobjectizer/news/2017/05/sobjectizer-v5519-released/
[2]:
https://habrahabr.ru/post/328872/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut