我正在尝试使用 AkavacheBlobCache.InMemory.GetOrCreateObject
将缓存添加到我的一个数据库表中,当我异步调用它时,一切都很好。但是由于 async 也需要调用者更改为 async 并且有很多地方需要更改,所以我选择BlobCache.InMemory.GetOrCreateObject
同步调用而不是通过执行以下操作
public async Task<List<T>> GetAllDataAsync() => await BlobCache.InMemory.GetOrCreateObject(...);
public List<T> GetAllData() => GetAllDataAsync().Result;
这会导致死锁。我做错了什么?
Edit1:此代码在 ASP.NET Web API 中运行