完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
|
1 文件I/O 若单循环使用文件I/O打开文件,获取句柄但不释放 每隔一段时间,内 存占用会增加4k 泄漏速度与文件大小无关 特意编写了一个测试程序,使用打开文件函数逐个打开二十多个15M的文本文件而不释放句柄 程序读取后一个文本文件时,便将前一个文本文件的内容从内存中移除 所以就算程序连续运行,并且处理较大的文件,也不会有特别明显的问题 2 队列 每次调用获取队列函数时都会建立一个队列的引用,该引用占用 4 字节内存。每次您调用获取队列函数之后,无论队列是否存在,另一个引用都会被建立,即占用 4 字节内存。在您获取队列的引用并将一些信息压入队列之后,您应当使用释放队列函数。调用释放队列不会丢弃您的队列,它将释放一个并且只释放一个队列的引用。队列将继续存在直到所有的引用被释放。 在您进入您的循环之前调用获取队列函数并且在循环中重复调用将保证您的队列存在至少一个引用。您可以在您的 while 循环之外使用获取队列的调用并将 queue out 引用传递到您的 while 循环之内。 当使用获取队列引用,并将15M文本文件写入队列中,不取出数据 不释放引用的情况下 如下图,这段代码运行200多次后,程序便弹出以下两个对话框.
如果在代码段后端加上取出数据(依旧不释放引用),内存占用每隔几秒钟增加8k 3.数据处理中使用数组 由于采集的数据本来就很大,在循环中又使用创建数组函数,由于该函数没有指定大小,每次加入新的数据时,要不断调整增加数组大小,但是labview不能判断原来的数据是否还有其他用处,所以每次调整数组大小都会复制一份新数据,这样内存开销非常大。 |
|
相关推荐
7 个讨论
|
|
|
|
|
|
|
|
|
labview内存泄露原因!学习了
|
|
|
|
|
|
|
|
你正在撰写讨论
如果你是对讨论或其他讨论精选点评或询问,请使用“评论”功能。
1537 浏览 0 评论
1044 浏览 0 评论
676 浏览 0 评论
【团购】独家全套珍藏!龙哥LabVIEW视觉深度学习实战课(11大系列课程,共5000+分钟)
2690 浏览 0 评论
1563 浏览 1 评论
浏览过的版块 |
/9
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2025-12-15 11:54 , Processed in 0.903757 second(s), Total 64, Slave 50 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191

淘帖
8102