我不得不从分贝读大量BLOB数据(更然后300GB)并插入到另一个db.I正在通过使用以下代码如何以及何时在C#中处理对象?
if (dr.HasRows)
{
while (dr.Read())
{
media m = new media
{
docid = Convert.ToInt32(dr["Id"]),
Content = Convert.ToByte(dr["BlobData"]),
madiaName = Convert.ToString(dr["Name"])
}
}
InsertInNewDb(m);
}
我逐行读取并插入数据在读取数据asnother db.The问题是内存完整的异常后发送一些数据生成,因为我不处置对象。 如何在单次迭代后处理对象?
“我要读大量的BLOB数据(更多然后300GB)” - 嗯,WTF!你将不得不缓冲和读取块...最大的单个.NET对象是2GB。 –
处理不是问题,除非你有300GB的内存,你不能在内存中读取那么多。 –
处理对象与内存无关。它与释放非托管资源(如文件句柄)有关。 –