问题: - 多个后台线程同时写入数据库缓存 - SqlSugar Singleton 连接冲突 修复: - 添加静态 SemaphoreSlim(1, 1) 写入锁 - 所有数据库写入操作串行化 - 写入失败不影响主流程(内存缓存已生效) 流程: 1. 获取价格成功 → 写入内存缓存(ConcurrentDictionary,线程安全) 2. 后台线程排队等待写入锁 3. 串行写入数据库(避免连接冲突) 4. 写入失败只记录日志 |
||
|---|---|---|
| .. | ||
| Services | ||
| StrategyEngine | ||
| AssetManager.Infrastructure.csproj | ||