performance - sirve - desactivar actualizaciones adobe reader dc
Live Binding con actualizaciones automáticas en XE3(no es necesario llamar a Notify() como en XE2) (1)
Actualmente estoy usando Delphi XE2, y escuché acerca de su nuevo Live Binding con actualizaciones automáticas en XE3 (no es necesario llamar a Notify () como en XE2).
en C # o en Delphi XE2 tenemos que implementar INotifyPropertyChanged
( Notify();
en Delphi), y este enfoque realmente tiene sentido ya que tenemos control total sobre los contenidos que se actualizarán y cuándo actualizarlos para que podamos ajustar el rendimiento y implementar la virtualización fácilmente
Pero solo quiero saber cómo funciona, qué tipo de mecanismo han hecho para implementarlo, y no tengo ni idea de cómo lo han hecho, a continuación están las suposiciones que pueden haber usado para implementar las actualizaciones automáticas.
Temporizador: un temporizador marca con frecuencia y actualiza todos los datos
Rendimiento muy lento sin virtualización
Función de nivel de compilador: todos los códigos relacionados con
notify() events
implementados por el compilador de forma automáticaUn montón de cabezas
Somme otro enfoque:
Por favor, ayúdame a identificar cómo lo han implementado.
Actualmente estoy usando la versión de prueba de XE3, por lo que no tengo acceso al código fuente, sus respuestas me ayudarán a decidir si cambiar a nuevas funciones o no .
Tengo una clase (elemento de colección) con 400 propiedades para enlazar (no todas ellas todo el tiempo), por lo que el rendimiento realmente juega un papel importante en la estabilidad de mi aplicación.
LiveBindings ocurre vinculando cualquier objeto con otro objeto de interés basado en algunos eventos. Esto sucede por un patrón de observador, cuando hay desencadenante de evento, el inspector de objetos será notificado y el inspector notificará a los componentes ya registrados para mostrar los cambios.
Espero que esto ayude. Hay mucha documentación para esto si quieres cavar alrededor.