void IDataLoadManager.RemoveSource(IDataLoaderSource src) { lock (this) { if (_dataSources.Contains(src)) { _dataSources.Remove(src); src.OnNextReady -= DataSource_OnNextReady; } } }
void IDataLoadManager.AddSource(IDataLoaderSource src) { lock (this) { if (!_dataSources.Contains(src)) { _dataSources.Add(src); src.OnNextReady += DataSource_OnNextReady; _ready.Set(); } } }
void DataSource_OnNextReady(IDataLoaderSource src) { _ready.Set(); }