XE3에서 자동 업데이트로 라이브 바인딩 (XE2 에서처럼 Notify ()를 호출 할 필요 없음)
저는 현재 Delphi XE2를 사용하고 있으며 XE3에서 새로운 Live Binding with Automatic 업데이트에 대해 들었습니다 (XE2에서와 같이 Notify ()를 호출 할 필요 없음).
C #에서 델파이 XE2에서 우리가 구현해야한다 INotifyPropertyChanged
( Notify();
델파이), 우리는 업데이트 될 내용을 완벽하게 제어 할 수 있습니다, 우리가 조정할 성능을 미세하고 쉽게 가상화를 구현할 수 있도록 때를 업데이트로이 방법은 정말 의미가 있습니다.
그러나 나는 그것이 어떻게 작동하는지, 그것을 구현하기 위해 어떤 종류의 메커니즘을 수행했는지 알고 싶습니다. 그들이 어떻게했는지 모르겠습니다. 다음은 자동 업데이트를 구현하는 데 사용되었을 수있는 가정입니다.
타이머 : 타이머가 자주 틱하고 모든 데이터를 새로 고칩니다.
매우 느린 성능, 가상화 없음
컴파일러 수준 기능 :
notify() events
컴파일러에서 자동으로 구현되는 모든 관련 코드많은 오버 헤드
Somme 다른 접근 방식 :
그들이 어떻게 그것을 구현했는지 확인하도록 도와주세요.
현재 XE3 평가판을 사용 중이므로 소스 코드에 액세스 할 수 없습니다. 귀하의 답변은 새 기능으로 전환할지 여부를 결정하는 데 도움이 될 것 입니다.
바인딩 할 400 개의 속성이있는 클래스 (컬렉션 항목)가 있으므로 (모든 항목이 항상 아님) 성능이 실제로 내 응용 프로그램의 안정성에 중요한 역할을합니다.
라이브 바인딩은 일부 이벤트를 기반으로 어떤 객체를 관심있는 다른 객체와 바인딩함으로써 발생합니다. 이것은 관찰자 패턴에 의해 발생하며, 이벤트 트리거가있을 때 개체 검사자에게 알림이 전송되고 검사자는 이미 등록 된 구성 요소에 변경 사항을 표시하도록 알립니다.
도움이 되었기를 바랍니다. 주위를 파고 싶다면 이것에 대한 많은 문서가 있습니다.
'developer tip' 카테고리의 다른 글
OpenCV undistortPoints 및 triangulatePoint가 이상한 결과 (스테레오)를 제공합니다. (0) | 2020.11.22 |
---|---|
xperf WinDBG C # .NET 4.5.2 응용 프로그램-프로세스 덤프 이해 (0) | 2020.11.22 |
WebRTC AGC (자동 이득 제어) (0) | 2020.11.22 |
JAAS 인증 확인을 Shiro에 위임하려면 어떻게해야합니까? (0) | 2020.11.22 |
대규모 공개 데이터 세트? (0) | 2020.11.21 |