Раньше мы рассказывали про [SObjectizer][1] как про акторный фреймворк для C++, хотя в действительности это не совсем так. Например, уже давно в SObjectizer есть такая классная штука, как [mchain-ы][2] (они же каналы из модели [CSP][3]). Mchain-ы позволяют легко и непринужденно организовать обмен данными между рабочими потоками. Не создавая агентов, которые нужны далеко не всегда. Как раз на днях довелось в очередной раз этой фичей воспользоваться и упростить себе жизнь за счет передачи данных между потоками посредством каналов (т.е. SObjectizer-овских mchain-ов). Так что не только в Go можно получать удовольствие от использования CSP. В C++ это так же возможно. Кому интересно, что и как, прошу под кат.
[Читать дальше →][4]
[1]:
https://habrahabr.ru/post/304386/
[2]:
https://www.slideshare.net/YauheniAkhotnikau/dive-into-sobjectizer-55-ninth-part-message-chains
[3]:
https://en.wikipedia.org/wiki/Communicating_sequential_processes
[4]:
https://habrahabr.ru/post/336854/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut