2011-04-26 47 views
2

因此,我正在嵌入式环境中工作,并且需要将所有数据从SQL Server Compact Edition数据库(.sdf文件)传输到SQLite数据库。因此,这将是一次性操作,我担心的是如果我连接到CE数据库以检索数据,这会在读取数据完成后导致使用额外的内存和CPU资源并继续存在吗?我希望SQL Server CE使用的所有资源都会被垃圾收集,并在完成从CE数据库读取后释放,否则我可能会被迫编写自己的.sdf分析器/阅读器。使用SQL Server CE的内存/性能

有没有人知道我在完成连接到数据库之后将处理SQL Server CE的资源,并且如果我可以安全地假定在读取数据后它们将被释放?

+1

这是为什么关注你?你是否真的进行过测试,发现你的担忧是有效的?似乎有人怀疑,你可以自己写的任何东西都会更好。我会建议编写一个简单的程序作为测试,看看你的担忧是否有效。 – 2011-04-26 20:16:47

+0

如果转移发生在每小时甚至每天都会发生,那么关注这一点就很有意义。但是你说这是一次性操作!即使事实证明,您永远不会恢复的转移LEAKS内存(这会让我感到意外) - 继续进行传输,然后重新启动您的嵌入式环境!为什么这是一个问题? – 2011-05-05 01:21:50

+0

你没有具体说明你是如何“转移”的。你是否连接到数据库,然后按表选择数据表并插入到SQLIte数据库中?请根据您提出的算法编辑您的问题,然后人们可以帮助您寻找什么。 – bryanmac 2011-08-28 22:57:42

回答

1

我相信你在这里没有问题。 ce和sql服务器的高级版本已经施加了使用限制。我使用mem和1个物理cpu,并且如果您正在执行一次性批处理,那么在进程停止后,mem将为GC。