说我有以下代码:
using (var db = new MyDatabaseContext())
{
foreach (var entity in db.LargeEntities)
{
byte[] data = entity.LargeBlob;
File.WriteAllBytes("c:\\" + entity.FileName);
}
}
每个entity.LargeBlob的数据何时可以进行垃圾回收?循环期间?使用声明后?我已经完成了WriteAllBytes行之后的对象,所以我希望它尽快处理掉。
答案 0 :(得分:1)
Using
阻止后gc已准备就绪。因为EF保留了已加载项的本地副本,所以必须配置Context以释放缓存的项目。