41 lines
1.1 KiB
Markdown
41 lines
1.1 KiB
Markdown
# Application::ClearProjectLibrary
|
|
|
|
清空当前项目 `Library` 缓存目录及其索引状态。
|
|
|
|
```cpp
|
|
bool ClearProjectLibrary();
|
|
```
|
|
|
|
## 当前行为
|
|
|
|
当前实现会:
|
|
|
|
1. 取全局 `ResourceManager`
|
|
2. 调用 `resourceManager.Initialize()`
|
|
3. 转发到 `resourceManager.ClearProjectLibraryCache()`
|
|
|
|
## 当前语义
|
|
|
|
和 [ReimportAllProjectAssets](ReimportAllProjectAssets.md) 不同,这个方法当前只负责“清空缓存”,不负责立即重建所有 artifact。
|
|
|
|
底层会:
|
|
|
|
- `UnloadAll()` 清空当前资源对象
|
|
- 调用 `AssetImportService::ClearLibraryCache()`
|
|
- 刷新 `ProjectAssetIndex`
|
|
|
|
因此调用后,后续首次加载或显式重导会重新生成需要的 artifact。
|
|
|
|
## 适用场景
|
|
|
|
- 诊断某个缓存目录是否已损坏
|
|
- 在全量重导前先做一次干净清库
|
|
- 需要确认 `Library` 中不存在旧 artifact 残留
|
|
|
|
## 相关文档
|
|
|
|
- [Application](Application.md)
|
|
- [ReimportAllProjectAssets](ReimportAllProjectAssets.md)
|
|
- [GetProjectLibraryRoot](GetProjectLibraryRoot.md)
|
|
- [ResourceManager](../../Core/Asset/ResourceManager/ResourceManager.md)
|