如何在Windows窗体C#中保存大量数据
我目前正在将大约一百万行存储到DataTable中,
这需要大约600 Mb的RAM. 因此,当您运行应用程序时,它会在DataTable中存储1 000 000行并在GridView上显示该行.关闭应用程序时,这显然会清除内存. 我想向用户提供此选项,换句话说,当用户尝试关闭表单时,将询问他是否要清除内存. 这样做的原因是,每次运行应用程序时都不必等待数据被读入Datatable. ….我对C#相当新,所以如果这是一个适当的问题,我道歉. 解决方法
如果存储器中存在正在运行的应用程序/进程,则只能在内存中保留一些内容 – 如果应用程序关闭(并且只有一个应用程序实例在内存中打开),则内存将被释放.如果你想将它保存在内存中,那么你唯一的选择就是
>不要关闭您的申请,例如只是隐藏窗口(通常是一个非常糟糕的想法,你的用户不会感谢你) 更好的想法是改变应用程序使用大型数据集的方式,这样就不需要将它全部保存在内存中,例如,如果在大型列表视图中显示所有数据,则使用虚拟列表视图这样只有当前显示给用户的那些行才会被加载到内存中.然后,您可以将数据存储在外部数据库或半永久性文件(例如SQLite数据库)中. 或者只是像你现在一样加载数据集. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- winapi – 当你可以使用RET时,为什么在Win32下需
- Windows(Services for Unix)NFS客户端“足够好”
- windows – 递归列出powershell中的目录
- Windows Server 下 IIS 申请部署 Let’s Encrypt
- windows-server-2008 – Nagios检查Windows Serv
- Elastic Kibana - Install as windows service
- Windows上的SQLite数据库是否有MySQLAdmin或SQL
- 在Windows上删除后重新安装USB设备
- 如何将ntfs-3g与自制软件链接?
- 安装Windows驱动程序时不会出现未签名的警告