完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
|
最近遇到一个问题,使用DB Tools操作ACCESS数据库的时候,发现在查询大量数据的时候,程序内存暴增,然后每查询一次都会有所增加,但把查询相关的程序关闭了,只要不退出LV,内存就不释放。
这时我用的查询语句是:SELECT C1,C2,C3.. FROM Table where ...,根据查询条件,有时会一次返回上万条数据,当查询结果中包括30列,2万多条记录时,内存要增加300MB左右。 后来,搜索相关问题,得知可以通过查询数据分页的方式把一次查询分成多个子查询然后再拼接起来,强哥在一个帖子里回答说用LIMIT来限制每次返回的记录数,但ACCESS不支持这个指令,只能用繁琐的top语句来替代。 这时,我用的查询语句是:SELECT TOP 1000 C1,C2,C3... FROM Table where ...,根据返回记录数是否小于1000(假如设定每次返回1000条),来判定是否查询结束,内存问题有所改善,返回30列,2万多条记录时,内存增加100MB左右。 但仍然不能彻底解决问题。 偶然,我发现360安全卫士提供的任务管理器可以优化内存,占用几百兆内存的程序一优化就剩下几十兆或几兆了,他是怎么做到的呢?windows肯定提供了这个机制。 我就在网上搜啊搜啊搜,终于被我找到了,一个叫empty.exe的程序,调用这个程序可以清理程序的内存。 调用方法:empty {pid | task-name} 省心了,呵呵。
empty.txt
(9.5 KB, 下载次数: 1423
)
这边还有个仁兄更加简单: 提供一个dll。嵌入你的程序内,随时随地爱怎莫释放就怎莫释放! 调用方式: void FreeMem(void); 简单吧,没有参数。有没有返回值(方便LV们使用!
FreeMem.rar
(2.4 KB, 下载次数: 2771
)
评分
|
||
|
相关推荐
|
||
|
学习学习 谢谢分享很吊
|
|
|
|
|
|
|
|
|
请问有64位版本的吗?
|
|
|
|
|
|
|
|
|
亲测有效,推荐使用
|
|
|
|
|
|
|
|
|
有64位labview可以使用的dll吗?
|
|
|
|
|
|
|
|
|
请问有64位版本的吗?@的乏味而
|
|
|
|
|
|
|
|
413 浏览 0 评论
请教大神,在labview里面对实时扫描资源中的C系列模块NI9234进行配置发生非预期错误
1775 浏览 0 评论
1622 浏览 0 评论
LABVIEW 2023 Q1调用python后一直报错1671
1991 浏览 2 评论
5403 浏览 3 评论
/9
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2025-12-3 02:25 , Processed in 1.271942 second(s), Total 78, Slave 65 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191

淘帖