Хабр Курсы для всех
РЕКЛАМА
Практикум, Хекслет, SkyPro, авторские курсы — собрали всех и попросили скидки. Осталось выбрать!
Выглядит впечатляюще. Только появились вопросы:
1) Что с накладными расходами? Насколько медленне [или быстрее] отправить сообщение агенту, чем захватить мьютекс и вызывать метод некоторого объекта?
2) Я правильно понял, что ответить на сообщение можно только отправив сообщение отправителю?
3) Предполагается, что все агенты "живут" в рамках одного процесса? Можно ли отправить сообщение агенту из другого процесса? А тому, который на другом компьютере?
class request_processor : public so_5::agent_t // Агент-получатель.
...
some_result on_request(const some_request & msg ) { // обработчик события.
...
return some_result(...);
}
};
...
auto result = so_5::request_value< some_result, some_request >(
request_processor_mbox, // Кому отсылается запрос.
std::chrono::seconds(10), // Ждать ответа не более 10sec.
...); // Параметры для конструктора some_request.
SObjectizer: что это, для чего это и почему это выглядит именно так?