LabVIEW使用VI服务器的调用节点将数据传递到另一个VI 使用调用节点(Invoke Node)与通过引用调用节点(Call by Reference)调用VI时有什么差别?

简介: LabVIEW使用VI服务器的调用节点将数据传递到另一个VI 使用调用节点(Invoke Node)与通过引用调用节点(Call by Reference)调用VI时有什么差别?

LabVIEW使用VI服务器的调用节点将数据传递到另一个VI


注意第二个:使用调用节点(Invoke Node)与通过引用调用节点(Call by Reference)调用VI时有什么差别?


可以使用按引用节点调用来动态调用VI。允许将值传递给控件并从指示器返回值。此方法是使用VI服务器将数据传递到VI的首选方法。有关更多信息,请参阅通过引用调用VI和通过调用节点调用VI与通过引用节点调用VI之间的区别


还可以使用“设置控件值”和“获取控件值”方法来完成此任务。要使用此方法,必须先使用打开VI引用功能打开对VI的引用,然后在调用运行VI调用节点之前使用单独的调用节点传递数据。该过程需要为将数据传递到的每个控件提供一个调用节点。必须知道控件的名称及其数据类型。可以使用调用节点的“设置控制值”方法或“设置控制值 [变体]”方法来传递数据。必须确保名称和数据类型匹配,否则将收到一条错误消息,指出输入参数无效。如果要从VI中提取信息,则需要为要从中检索信息的每个指标创建一个单独的调用节点。使用获取控件值或获取控件值 [变体] 方法检索信息。


使用调用节点(Invoke Node)与通过引用调用节点(Callby Reference)调用VI时有什么差别?


解决方案


在通过引用调用VI时,使用调用节点和通过引用调用节点的主要差别在于编程的便捷性以及结构的灵活性。当使用通过引用调用节点时,必须连线严格类型引用。严格类型引用中包括含有数据类型的连线板以及指向VI的引用。因此,当使用通过引用调用节点时,LabVIEW已知数据类型并在节点中创建连线板。通过这个方法,能够实现动态加载VI,同时获得简单连线的便捷性。


当使用调用节点时,LabVIEW忽略是否使用严格类型引用。因此能够传递任何VI到调用节点并运行。由于不需要限定类型以及调用具有相同连线板的VI,使用调用节点大大增加了灵活性。但是,如果要传递值,则需要知道控件及其数据类型的名称 ,这需要额外的编程。如果想做的只是打开前面板并运行VI,那么调用节点也是一个简单的方法。考虑到能够传递任何VI路径并且打开加载该VI,这个方法显得更加灵活。


使用调用节点调用VI的另一个好处是它提供了与VI交互的能力。如果VI需要被控制或者输出需要多次读取,调用节点的方法能够与VI交互以实现所需功能。使用通过引用调用节点时,在VI结束执行后连线板会输出结果,但它不提供与运行中VI交互的能力。

如果要异步调用目标VI,请使用开始异步调用节点(Start Asynchronous Call Node)而不是通过引用调用节点(Call by Reference Node)。这将允许目标VI在单独的线程上运行。


使用调用节点的方法可能会在UI线程中运行目标VI,如果希望在调用VI运行时让被调用VI充分执行,则可能会导致一些问题。即使有一个False常量连接到结束前等待(Wait Until Done)终端,也会发生这种情况。对于单独线程中的完整异步调用,需要修改目标VI的执行设置,方法是转到文件»VI属性(File»VI Properties),在对话框中选择执行(Execution),然后选择不同于用户界面或与调用者相同的执行系统。


需要说明的是,上述的例程和文档,都是可以下载的,双击即可打开,其中压缩文件是可以采用粘贴复制的方式,拷贝到硬盘上。这不是图片,各位小伙伴看到后尝试一下,这个问题就不用加微信咨询了。有关LabVIEW编程、LabVIEW开发等相关项目,可联系们。

相关文章
|
16天前
|
机器学习/深度学习 JavaScript Cloud Native
Node.js作为一种快速、可扩展的服务器端运行时环境
Node.js作为一种快速、可扩展的服务器端运行时环境
29 8
|
19天前
|
JavaScript
使用Node.js创建一个简单的Web服务器
使用Node.js创建一个简单的Web服务器
|
26天前
|
XML 前端开发 JavaScript
PHP与Ajax在Web开发中的交互技术。PHP作为服务器端脚本语言,处理数据和业务逻辑
本文深入探讨了PHP与Ajax在Web开发中的交互技术。PHP作为服务器端脚本语言,处理数据和业务逻辑;Ajax则通过异步请求实现页面无刷新更新。文中详细介绍了两者的工作原理、数据传输格式选择、具体实现方法及实际应用案例,如实时数据更新、表单验证与提交、动态加载内容等。同时,针对跨域问题、数据安全与性能优化提出了建议。总结指出,PHP与Ajax的结合能显著提升Web应用的效率和用户体验。
40 3
|
26天前
|
JavaScript
使用node.js搭建一个express后端服务器
Express 是 Node.js 的一个库,用于搭建后端服务器。本文将指导你从零开始构建一个简易的 Express 服务器,包括项目初始化、代码编写、服务启动与项目结构优化。通过创建 handler 和 router 文件夹分离路由和处理逻辑,使项目更清晰易维护。最后,通过 Postman 测试确保服务正常运行。
46 1
|
1月前
|
缓存 负载均衡 监控
性能优化:Node.js高效服务器开发技巧与最佳实践
【10月更文挑战第29天】在Node.js服务器开发中,性能优化至关重要。本文介绍了几种高效开发的最佳实践,包括使用缓存策略、采用异步编程、实施负载均衡和性能监控。通过示例代码展示了如何实现这些技术,帮助开发者构建更快、更稳定的Node.js应用。
71 2
|
19天前
|
存储 运维 算法
服务器数据恢复—raid6阵列硬盘重组raid5阵列如何恢复raid6阵列数据?
服务器存储数据恢复环境: 存储中有一组由12块硬盘组建的RAID6阵列,上层linux操作系统+EXT3文件系统,该存储划分3个LUN。 服务器存储故障&分析: 存储中RAID6阵列不可用。为了抢救数据,运维人员使用原始RAID中的部分硬盘重新组建RAID并进行了初始化。 初始化开始一段时间后,运维人员察觉到情况有异后强制终止初始化,这个时候初始化已经完成一半以上。数据部分已被不可逆的破坏。
|
1月前
|
数据采集 存储 JavaScript
如何使用Puppeteer和Node.js爬取大学招生数据:入门指南
本文介绍了如何使用Puppeteer和Node.js爬取大学招生数据,并通过代理IP提升爬取的稳定性和效率。Puppeteer作为一个强大的Node.js库,能够模拟真实浏览器访问,支持JavaScript渲染,适合复杂的爬取任务。文章详细讲解了安装Puppeteer、配置代理IP、实现爬虫代码的步骤,并提供了代码示例。此外,还给出了注意事项和优化建议,帮助读者高效地抓取和分析招生数据。
如何使用Puppeteer和Node.js爬取大学招生数据:入门指南
|
2月前
|
存储 数据挖掘
服务器数据恢复—用RAID5阵列中部分盘重建RAID5如何恢复原raid5阵列数据?
服务器数据恢复环境: 一台服务器挂接一台存储,该存储中有一组由5块硬盘组建的RAID5阵列。 服务器故障: 存储raid5阵列中有一块硬盘掉线。由于RAID5的特性,阵列并没有出现问题。工作一段时间后,服务器出现故障,用户方请人维修。维修人员在没有了解故障磁盘阵列环境的情况下,用另外4块硬盘(除去掉线的硬盘)重新创建了一组全新的RAID5阵列并完成数据同步,导致原raid5阵列数据全部丢失。
|
2月前
|
JavaScript
DOM 节点列表长度(Node List Length)
DOM 节点列表长度(Node List Length)
|
2月前
|
JSON JavaScript 前端开发
使用JavaScript和Node.js构建简单的RESTful API服务器
【10月更文挑战第12天】使用JavaScript和Node.js构建简单的RESTful API服务器
22 0