void FillCache() { if (reader.cache != null) { return; } lock (reader.cache_lock) { if (reader.cache != null) { return; } ResourceCacheItem[] resources = new ResourceCacheItem [reader.resourceCount]; reader.LoadResourceValues(resources); reader.cache = resources; } }