Class SynchronizedList<T>
This is an IEnumerable which relies on an up-stream cache, which may change. That would require this IEnumerable to update what it delivers.
[InternalApi_DoNotUse_MayChangeWithoutNotice("this is just fyi")]
public class SynchronizedList<T> : SynchronizedObject<IImmutableList<T>>, ICacheDependent, ICacheExpiring, ITimestamped, IEnumerable<T>, IEnumerable
Type Parameters
T
The type which is enumerated, usually an IEntity
- Inheritance
-
objectSynchronizedList<T>
- Implements
-
IEnumerable<T>
- Inherited Members
Constructors
SynchronizedList(ICacheExpiring, Func<List<T>>)
Initialized a new list which depends on another source
[Obsolete("You should prefer the Func<Immutable> signature")]
public SynchronizedList(ICacheExpiring upstream, Func<List<T>> rebuild)
Parameters
upstream
ICacheExpiringthe upstream cache which can tell us if a refresh is necessary
rebuild
Func<List<T>>the method which rebuilds the list
SynchronizedList(ICacheExpiring, Func<IImmutableList<T>>)
Initialized a new list which depends on another source
public SynchronizedList(ICacheExpiring upstream, Func<IImmutableList<T>> rebuild)
Parameters
upstream
ICacheExpiringthe upstream cache which can tell us if a refresh is necessary
rebuild
Func<IImmutableList<T>>the method which rebuilds the list