Возможно ли в Akka создавать TypedActors с прокси более одного интерфейса? - PullRequest
0 голосов
/ 10 января 2012

Актированные типы Akka создаются из двух частей с использованием прокси-серверов JDK, в результате чего прокси-сервер является продуктом указанного интерфейса, а реализация формирует управляемый экземпляр поддержки. Однако это средство конструирования не позволяет TypedActor реализовать несколько типов (интерфейсов).

Я думал, что где-то читал, что Akka 2.0 собирается это изменить. У кого-нибудь есть мысли по этому поводу или как обойти? К вашему сведению, я использую Akka на чистой Java, а не Scala на данном этапе

Ответы [ 2 ]

1 голос
/ 11 января 2012

Типизированные акторы в pre-2.0 реализованы с использованием аспектного переплетения и, следовательно, не являются прокси-серверами JDK.

Типизированные акторы в 2.x основаны на прокси-серверах JDK, и вы можете использовать столько интерфейсов, сколько предполагаетсяот JDK: Наддув

0 голосов
/ 09 августа 2013

Существует официальное мнение, что типизированные актеры не лучшие (см. When_to_use_Typed_Actors ).Если это возможно, попробуйте использовать нетипизированные актеры с типизированными сообщениями.

Мы использовали сообщения такого типа:

class Contact<T>
class Signal<T>(contact:Contact<T>, data:T)

Пример контакта легко проверить на равенство.(if-elseif-elseif) Обычно для обработки всех входов достаточно карты обработчиков контактов.

Идея строго типизированных сигналов получила дальнейшее развитие в библиотеке SynapseGrid .Он определяет Builder для связи типизированных обработчиков с типизированными контактами.

...