我有一个包含超过10000行的数据表。
我什么时候:
Dim oTable As New System.Data.DataTable
' .....
' Filling the DataTable
' .....
oTable.writeXml("MyFile.xml")
writexml() 是否使用内存或HardDrive?
我测试了,我发现它占用了大量内存。
编写文件通常使用FileStreams。所以它不应该使用内存。
我错了吗?
答案 0 :(得分:0)
我不认为WriteXML吃内存是正常的。刚刚在表中测试了287,120行(导出的XML大小近200MB) - 内存使用率保持不变。将此表加载到内存中需要大约1.2GB,然后在编辑器中打开它。运行WriteXML后,内存消耗在4-5秒内保持不变,可能会上下1MB。
您是如何填写DataTable的?如果你正在使用一些延迟加载技术,这可能解释了高内存使用率,但这不是由WriteXML,而是由数据本身。