The pre-compute lists of data for Locations were stored internally as arrays. I need to experiment with different methods of accessing them for the best performance without allowing programs to update those sets of data.
It looks like replacing static data structures in Location with int[] cast to IReadOnlyList is about as fast as you can get while still guaranteeing data integrity.
The pre-compute lists of data for Locations were stored internally as arrays. I need to experiment with different methods of accessing them for the best performance without allowing programs to update those sets of data.