1 / 8

PV Manager

PV Manager. Gabriele Carcassi Feb 18 2010. Objective. To address the mismatch between the requirements of GUI subsystems and the CA client libraries. UI subsystem requirements. Single threaded Notification must be done on event thread

denna
Download Presentation

PV Manager

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. PV Manager Gabriele Carcassi Feb 18 2010

  2. Objective • To address the mismatch between the requirements of GUI subsystems and the CA client libraries

  3. UI subsystem requirements • Single threaded • Notification must be done on event thread • Data objects must be changed on the event thread only (to simplify responding to events) • Work must be offloaded to other threads as much as possible (to prevent unresponsiveness) • Refresh rate 1Hz-50Hz (faster is useless and counter productive)

  4. Channel Access • Multi threaded • Notification done on connection threads • Data objects changed on connection threads • Rate is not limited: can be KHz

  5. Collect, aggregate and notify Notificator Collector Monitor • Need to collect the data at the line rate • Aggregate the data at the UI rate, and notify on UI thread • Decide how to aggregate (avg, last value, min, max)

  6. Transform and calculate Notificator Collector Monitor • While we are on other thread, we might as well calculate what we need • Define functions of multiple PVs, that may transform types (calculate statistics, prepare synch’ed arrays, …) PV Function PV Function Cache

  7. Close channels Notificator Collector Monitor • We can use the GC to detect end of use • If PV object is GCed, notification can stop • If Collector is GCed, CA monitors can stop PV Function PV Function Cache

  8. Locks Notificator Collector Monitor • Collector holds (is) write lock for line rate access • Collector holds read lock for its data (buffer) • Notificator is lock for calculating and notifying PV Function PV Function Cache

More Related