public async ValueTask LoadAsync() { using (await _settingsAsyncLock.LockAsync()) { if (_loaded) { throw new SettingsAlreadyLoadedException(); } _loaded = true; await _blockStorage.LoadAsync(); if (_settings.TryGetContent <ContentStorageConfig>("Config", out var config)) { foreach (var contentInfo in config.ContentMetadatas) { _contentMetadataStorage.Add(contentInfo); foreach (var hash in contentInfo.LockedHashes) { _blockStorage.Lock(hash); } } } _checkEventScheduler.ChangeInterval(new TimeSpan(0, 10, 0)); await _checkEventScheduler.RestartAsync(); } }