¿Es posible en Akka crear typedactores con proxies de más de una interfaz?

StackOverflow https://stackoverflow.com/questions/8807282

  •  26-10-2019
  •  | 
  •  

Pregunta

Los actores tipificados de AKKA se crean en dos partes utilizando proxies JDK, por el cual el proxy es un producto de una interfaz especificada, y la implementación forma la instancia administrada por el respaldo. Sin embargo, este medio de construcción evita que un typedactor implementa múltiples tipos (interfaces).

Pensé que había leído en algún lugar que Akka 2.0 iba a cambiar esto. ¿Alguien tiene alguna idea sobre esto o cómo en la solución? FYI, estoy usando akka en puro java, no scala en esta etapa

¿Fue útil?

Solución

Los actores escritos en antes de 2.0 se implementan utilizando el tejido de aspecto y, por lo tanto, no son proxies JDK.

Los actores tipificados en 2.x se basan en proxies JDK y esencialmente puede usar tantas interfaces como lo supuso el JDK: Sobrealimentación

Otros consejos

Existe una opinión oficial de que los actores escritos no son los mejores (ver When_to_use_typed_actors). Si es posible, intente usar actores sin tipo con mensajes escritos.

Hemos estado usando los mensajes del tipo:

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

La instancia de contacto es fácil de verificar sobre la igualdad. (if-elseif-elseif) Por lo general, un mapa de los manejadores de contacto es suficiente para manejar todas las entradas.

La idea de señales estrictamente escrita se desarrolla aún más en Sinapsegrid biblioteca. Define Builder para asociar a los manejadores escritos con contactos escrillos.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top