为什么在打开一个新的引用时,会得到错误2:内存已满?



主要软件: LabVIEW Development Systems>>LabVIEW Professional Development System
主要软件版本: 2016
主要软件修正版本: N/A
次要软件: N/A

问题:

运行我的LabVIEW代码时,我收到错误2 LabVIEW:内存已满。错误发生于创建一个VI的新引用时,例如(获取通知器,获取队列,打开VI引用,.NET构造函数节点,打开/创建/替换文件等)。为什么会收到此错误,如何避免?



解答: LabVIEW使用有限量的内存来存储每种类型的引用。因此,对于每种类型的引用,同时打开的数量被限制为1048575。因此,当到达这个数量后,任何在内存中创建新引用的框图函数可能会返回此错误。

这表示代码中的引用泄漏。引用没有正确关闭,并且最终1048575个同一类型的引用同时打开。尝试打开第1048576个引用时会出现此错误。要防止达到引用限制,请修改应用程序,以便在引用不再使用时使用相应的VI(例如释放通知器,释放队列,关闭引用等)来关闭引用。

相关链接:

附件:





报告日期: 12/01/2016
最近更新: 12/29/2016
文档编号: 7G0DKIGW