Android and javafx ligero marco de eventos compatible
Mi requisito es que estoy buscando un marco ligero del acontecimiento del peso que sea compatible en androide y Java Fx (plataforma de Windows y de Linux) de modo que funcione inconsútil en ambas tecnologías.
Investigué para los marcos basados en eventos existentes.
1) Eventing framework mbassador (by bennidi) -> es compatible con android 4.0 (sandwich de helado), ya que funciona bien con javafx y es ligero y el rendimiento también es bueno.
2) Guava EventBus: – De la documentación parece que es compatible con Android, pero ¿qué pasa con el rendimiento y es mejor que mbassador.
- Android PhoneGap Plugin, UI tabbar, redimensionar WebView
- aceleración de hardware webview slide-in animación parpadeo en ICS
- Android: java.lang.Throwable: setStateLocked
- Android FragmentLayout no está cargado
- ¿Qué clase debo usar para Date's en Android?
- ¿Por qué no aparece la fecha de lanzamiento de Android?
- Cómo recibir la última emisión de secuencia al llamar a rx.Observable.sample ()?
- Rotar vídeo con mp4parser de acuerdo con la cámara utilizada
- Manera correcta de obtener el objeto Realm por su clave principal en Android Java
- Android - Contenido Valores sobre la escritura de filas existentes
- Módulo o proyecto de importación como Biblioteca en Android Studio
- Error de entrada duplicado al utilizar POI con gradle
- HttpResponse usando android issue: ejecutar siempre causa excepción?
Eventing framework MBassador
es compatible con Android 4.0.
Guava Event Bus
es ligero y también compatible con ambas tecnologías.
Ambos el marco anterior son ligeros y proporcionan un mecanismo robusto para el patrón de Subscribe / Publish y de acuerdo a la descripción de MBassador
su diseño inicial fue inspirado en el Guava Event Bus
pero la referencia Strong a los oyentes utilizados en Guava Event Bus
fue un problema en algún escenario.
Según la sección de créditos en la descripción en GitHub MBassador
La inspiración inicial para crear este componente vino de probar la implementación de bus de eventos de Google Guava. Me gustó la simplicidad de su diseño y confío mucho en los desarrolladores de Google, así que me alegro de encontrar que también proporcionaron un sistema de bus de eventos. La razón principal por la que resultó inutilizable para nuestro escenario fue que utiliza referencias fuertes a los oyentes de tal manera que cada objeto tiene que ser cancelado explícitamente. Esto fue difícil en nuestro ambiente manejado por la primavera. Finalmente, decidí crear una implementación personalizada, que luego maduró para ser estable, extensible y, sin embargo, muy eficiente
Ambos el marco son robustos, ligeros y depende de su requisito cuál utilizar.
He encontrado la comparación del funcionamiento en [comparación de la biblioteca del autobús del acontecimiento de Java]] ( http://codeblock.engio.net/?p=37 ) (Conseguí los resultados de la página en caché de Google de este sitio) donde Google Guava, SimpleBus, EventBus Y mbassador marcos fueron comparados y MBassador fue el claro ganador .
EDIT: He eliminado la imagen instantánea y sólo se centra en los resultados finales,
Las características de rendimiento mostradas de las implementaciones comparadas indican que,
1. La suscripción de escuchas es una operación costosa para todas las implementaciones pero MBassador y Guava
2. El acceso concurrente generalmente ralentiza el rendimiento del bus debido a una mayor contención / sincronización.
3. SimpleBus es, con mucho, la implementación más lenta.
4. MBassador es de lejos la implementación más rápida en todos los escenarios. También ofrece las mejores características de escala, lo que significa que las mayores tasas de concurrencia no ralentizar el rendimiento del autobús, al igual que los demás. Esto se debe a que MBassador se basa en una estructura de datos personalizada con operaciones de escritura muy rápidas que no bloquean a los lectores y al mismo tiempo no copian estructuras de datos existentes (la mayoría de otras implementaciones utilizan CopyOnWriteArrayList).
Para resumir Durante los últimos meses hemos estado utilizando MBassador
y cumple con nuestro requisito que está funcionando bien en Android, JavaFX y funciona bien en java simple también en Linux, Windows, Mac, etc.
- ¿Cuál es la diferencia entre operador de sim y operador de red?
- Procesamiento de imágenes con Android Camera