/Engine/Source/Developer/DerivedDataCache/Public/DerivedDataCacheModule.h
This always returns a pointer to a valid cache, but that pointer becomes null when the module shuts down and destroys the cache. This extra level of indirection allows a caller to observe the destruction of the cache without polling this function or monitoring the module lifetime.
[FDerivedDataCacheInterface](API\Developer\DerivedDataCache\FDerivedDataCacheInterface) *const * CreateOrGetCache()