I have to keep a large list of points in memory for real time access, after fetching the table from a DB.
Each point is a struct that has many fields, but just two fields will be changing: value and quality.
This list can grow over 100 thousand points.
The changes will occur every 1 second. And can affect many points, hundreds or even thorusands.
Since list is immutable, I can´t change an item in the list.
To avoid rebinding the whole list every second, I need to find a way to be able to deal with immutability.
I thought about keeping 3 parallel lists: 1 containg the fixed fields, 1 containing just the value field, 1 for the quality.
But that will let the design somehow awkward, cause I will have to do first a lookup in the fixed list to find the right point based on a address, and use that index position to change either the corresponding value and/or qualitty.
There must be a clever or simpler way to design it.
Hope someone has deal with such a problem.
Thanks for the attention.