Описание тега c++-actor-framework

C++ Actor Framework (CAF) - это реализация модели акторов C++11 с открытым исходным кодом, включающая легкие и быстрые реализации акторов, сопоставление шаблонов для сообщений, прозрачный сетевой обмен сообщениями и многое другое.
2 ответа

Могу ли я использовать интеллектуальные указатели C++11 в качестве типа возврата сообщения в C++ Actor Framework?

Когда я использую unique_ptr в качестве возвращаемого типа, я получаю ошибку компилятора C2280: 'caf::detail::tuple_vals<std::unique_ptr<A,std::default_delete<_Ty>>>::tuple_vals(const caf::detail::tuple_vals<std::unique_ptr<_…
10 ноя '15 в 21:44
2 ответа

Невозможно объявить типизированный актер в C++ Actor Framework

Я пытаюсь объявить строго типизированный актер в C++ Actor Framework (CAF), но мой код по какой-то причине не компилируется. Не могли бы вы сказать мне, что с ним не так? #include "caf/all.hpp" template <typename TNum> class DiscoverRequest {}…
06 май '15 в 07:32
2 ответа

Как "публиковать" большое количество актеров в CAF?

Я только что узнал о CAF, C++ Actor Framework. Одна вещь, которая удивила меня, состоит в том, что способ сделать актера доступным по сети - это "опубликовать" его на определенном порте TCP. Это в основном означает, что количество действующих лиц, к…
1 ответ

Понимание функции субъекта CAF, которая возвращает void

Я знаю, что актеры могут быть реализованы по функциям. Следующий фрагмент кода взят из CAF github examples / hello_world.cpp. Я знаю первый метод реализации, который связывает пару обработчиков сообщений с актером. Актер будет жив на заднем плане и …
17 дек '15 в 14:13
1 ответ

Наилучшая практика для пересылки сообщений между типизированными актерами в C++ Actors Framework?

Я пытаюсь передать какую-то работу от одного типизированного актера другому. В руководстве пользователя CAF указано, что это можно сделать с помощью forward_to метод. Этот метод выглядит так, как будто он доступен только тем актерам, которые явно ev…
04 дек '15 в 20:03
1 ответ

Ошибка компилятора C2664 при порождении типизированного актера

Я получаю ошибку компилятора со следующим кодом, слегка измененным из одного из примеров, предоставленных C++ Actor Framework. Описание ошибки: 'void caf::intrusive_ptr_release(caf::ref_counted *)': cannot convert argument 1 from 'caf::typed_actor&l…
10 ноя '15 в 16:02
0 ответов

Кэширование ссылок актера в массиве

Я новичок в CAF, и я хотел бы создать, скажем, 10 000 актеров, кэшировать их в массив и отправлять им сообщения. Очень простой Создайте их: actor ventureBN_actor[numOfRuns]; for(int i = 0; i < numOfRuns; i++) { ventureBN_actor[i] = system.spawn(v…
18 мар '18 в 14:58
1 ответ

Как я могу включить C++ Actor Framework в проект Xcode?

Я следовал инструкциям здесь и тесты пройдены, но я не уверен, какие файлы мне нужно добавить в мой Xcode проект. У меня есть следующее: libcaf_core/caf имеет кучу hpp файлы, такие как all.hpp Но build/lib папка имеет некоторые dylib файлы: Кто-нибу…
14 апр '17 в 13:26
1 ответ

Начальное состояние для stateful_actor в CAF

Я использую CAF, чтобы смоделировать проблему для своей последней годовой диссертации, и я столкнулся со сценарием, который, я считаю, не документирован. В примере curl/curl_fuse.cpp Государственный curl_worker Актер определяется и создается следующ…
04 ноя '18 в 20:40
1 ответ

Гарантирует ли C++ Actor Framework порядок сообщений?

Может ли C++ Actor Framework использоваться таким образом, чтобы гарантировать порядок сообщений между двумя участниками? Я не мог найти ничего об этом в руководстве.
02 окт '15 в 07:22
1 ответ

Настройка C++ CAF Framework

Мой вопрос касается возможности настройки ведения журнала / трассировки, выполняемой CAF - viz. каркас C++ CAF позволяет приложению, связывающемуся с ним, настраивать ведение журнала и трассировку в CAF? Например, CAF записывает свои журналы в файл …
09 авг '17 в 11:20
1 ответ

Понимание stateful_actor

Я читал об использовании Stateful_actor в примерах examples / curl / curl_fuse.cpp и libcaf_core / test / stateful_actor.cpp. Похоже, stateful_actor<State> может связать некоторые состояния для актера, объявив поля в State struct, Это очень по…
21 дек '15 в 07:13
1 ответ

CAF Promise Result

В CAF ответные обещания позволяют субъекту отправлять и получать другие сообщения до ответа на конкретный запрос. Моя проблема в том, как использовать результат этого обещания. // function-based, statically typed, event-based API adder::behavior_typ…
02 июн '18 в 20:18
0 ответов

Почему CAF имеет высокое переключение контекста и низкое количество команд за цикл, используя perf stat?

Я использую CAF для переноса MPI-программы в актерскую. Неудивительно, что скорость актерской программы выше, чем у MPI. Однако, когда я использую perf stat чтобы их профилировать, я обнаружил, что программа на основе акторов имеет более высокий уро…
03 сен '18 в 13:23
1 ответ

Можно ли приостановить / возобновить всех актеров в системе actor_system?

Моя цель - создать приложение утилиты командной строки, которое использует CAF для параллелизма, и я хотел бы поддержать приостановку и возобновление работы утилиты путем ввода данных с консоли (т. Е. Ctrl-c и т. Д.). Предоставляет ли CAF / поддержи…
07 дек '16 в 21:18
2 ответа

Я получил ошибку компиляции при попытке построить примеры кода

Я столкнулся с этой ошибкой после cmake, а затем сделать. Я установил все зависимости как конфигурация.. спасибо ME664JA-no-MacBook-Pro:examples ME664JA$ make [ 0%] Built target all_examples [ 1%] Building CXX object CMakeFiles/curl_fuse.dir/curl/cu…
03 ноя '16 в 08:08
1 ответ

Как один актер получает IP удаленного актера в одной группе?

Как один актер получает IP удаленного актера в одной группе? Например, у меня есть два актера A и B, которые оба присоединились к одному групповому чату. А и Б были созданы на разных машинах. Затем B отправляет одно сообщение группе, и A может получ…
22 мар '17 в 13:44
1 ответ

Как скомпилировать и запустить новый проект C++ Actor Framework?

Я использую Ubunutu. Я установил CAF от GitHub. Я следую пошаговой инструкции: https://actor-framework.readthedocs.io/en/stable/FirstSteps.html Я хочу скомпилировать и запустить файл hello world. Никаких конкретных указаний для компиляции не приводи…
13 авг '17 в 12:56
1 ответ

Актер libcppa, который порождает актеров на сокетных соединениях

Я ищу пример кода для актера libcppa, который прослушивает порт для нового соединения, а затем порождает новых акторов для обработки нового соединения. Любая помощь будет оценена. Спасибо
11 июн '13 в 09:59
1 ответ

Почему CAF system.registry() должен автоматически вызывать erase(atom_value) после put(atom_value)

Я хочу использовать system.registry() в caf-0.15.7, чтобы сделать актеров общесистемными доступными по имени, когда я назначаю двух актеров к его имени, вызывая put(atom_value, actor), мой прогресс не завершится автоматически, и это остановится, пок…
26 июл '18 в 15:25