LabVIEW专栏二、调用子VI

该节目标是创建带子vi,修改vi属性,测试可重入和不可重入的区别

一 、设置子VI

把VI封装成为子VI,可以帮助模块化程序,简化代码结构。
任何VI本身都可以成为别的VI的子VI。

1.1、设置输入输出端子

1、在前面板空白处,点击右键可以把输入和输出控件放置到前面板。此处放置一个数值输入控件,控件标签为"数值",放置一个数值输出控件,控件标签为"数值 2"。
2、在前面板右上角有个"端子设置面板",鼠标移动到其中一格,此处点击左上第一个端子,点击后,对应的格子会变黑。添加输入端在这里插入图片描述

3、再点击对应的数值输入控件"数值"示例图片后,左上角端子就会变成控件的颜色示例图片

4、再设置输出端子,先点右上角的端子示例图片 ,再点数值输出控件"数值 2" 示例图片 后,右上端子就会变成控件的颜色 示例图片

1.2、设置重入

1、ctrl+i→选中"执行"→修改"重入"

在这里插入图片描述

  • 非重入:默认设置,一般用于耗时不长的,或者需要强制保持顺序的场合,比如tcp读写不能同时执行
  • 共享副本的重入:vi可重入,用于需要vi并行的场合,未初始化的寄存器也会保留上一次的值
  • 预分配副本的重入:vi可重入,用于需要vi并行的场合,相当于每个vi执行的时候,都是一个单独的vi在执行。

在这里插入图片描述一般情况下,需要vi重入的话,用"共享副本的重入"就足够。

1.3、修改vi图标

vi最好修改为可识别的图标,这样方便标识对应的功能
1、双击右上角图标
在这里插入图片描述2、弹窗
在这里插入图片描述3、隐藏图层
在这里插入图片描述4、工具选中"矩形"→圈中整个框
在这里插入图片描述
在这里插入图片描述5、图标文本输入对应的vi名称,也可以自定义,此处用"测试耗时"举例
在这里插入图片描述

二、编写vi

1、ctrl
创建以上三个vi

  1. 测试耗时:测试"等待(不可重入)"和"等待(重入)"的耗时

  2. 等待(不可重入):输入端子为数值,1000代表1s,输入到"等待(ms)“示例图片vi重入属性为默认的"非重入”

  3. 等待(重入):输入端子为数值,1000代表1s,输入到"等待(ms)“中。vi重入属性为默认的"共享副本重入”

1.1、统计vi耗时写法

使用"时间计数器":
在这里插入图片描述 1. 在vi执行前,放置一个,统计开始时间
2. 在vi执行完成后,放置一个,统计结束时间
在这里插入图片描述

1.2、等待(重入)和等待(不可重入)

在这里插入图片描述
写法一样,重入设置不一样。

1.3、测试耗时

在这里插入图片描述

1.4、运行结果

在这里插入图片描述可以看出"等待(重入)"的统计耗时都是1000,说明两个vi是并行执行的
而"等待(不可重入)"的统计耗时一个1000,一个2001,说明vi在两个地方调用,即便没有数据流的关系,也是顺序执行的,也就是先执行完一个,再执行另一个,同一时间只有一个在执行。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/788478.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Matlab|基于关键场景辨别算法的两阶段鲁棒微网优化调度

目录 主要内容 部分代码 结果一览 下载链接 主要内容 该模型主要求解的是微网两阶段鲁棒优化调度问题,与目前大部分用CCG算法不同,模型创新性的采用关键场景辨别法,通过少量的迭代辨别出最恶劣的场景,针对光伏出力的…

obs直播推流 + ffmpeg参数

OBS 启动参数设为 --startstreaming , 可以让它启动后自动开始直播 对应ffmpeg参数: echo off :loop ffmpeg -re -i a.mp4 -r 24 -c:v libx264 -preset ultrafast -profile:v baseline -g 24 -keyint_min 24 -x264-params nal-hrdcbr -b:v 2500k -minr…

洛谷P1000超级玛丽游戏题解[Python, Rust, Go]

题目 打印超级玛丽字符图像 小技巧 直接复制题目的超级玛丽符号首行会有空格问题,一直AC不过,一行一行地复制就OK了👌。 Rust 题解 fn main() {println!(" ********************####....#.#..###.....##....###...…

企业周年庆3d云展厅促进了客企间交流与互动

在数字化浪潮席卷而来的今天,传统的展示方式已难以满足现代人对信息获取与体验的高标准需求。为此,一种革命性的展示方式——线上3D虚拟展厅应运而生,以其独特的魅力逐渐引领展示方式的革新。 线上3D虚拟展厅开发,不仅为参与者带来…

JVM垃圾收集——相关概念

本贴讲解的内容包括System.gc()、内存溢出、内存泄漏、STW机制以及垃圾收集的串行、并行、并发三种情况,还有强引用、软引用、弱引用、虚引用四种引用。 1、System.gc()的理解 在默认情况下,通过System.gc()或者Runtime.getRuntime().gc()的调用&#…

提升常州小程序软件开发的搜索排名:关键步骤解析

在移动互联网的浪潮中,小程序作为连接用户与服务的桥梁,其重要性日益凸显。对于常州的小程序软件开发企业来说,如何让自己的产品在浩如烟海的互联网信息中脱颖而出,提升搜索排名,成为了亟待解决的问题。本文将为您解析…

HarmonyOS 应用开发之自定义组件冻结功能

自定义组件处于非激活状态时,状态变量将不响应更新,即Watch不会调用,状态变量关联的节点不会刷新。通过freezeWhenInactive属性来决定是否使用冻结功能,不传参数时默认不使用。支持的场景有:页面路由,TabCo…

什么是智慧公厕?智慧旅游下的智慧公厕功能和特点

智慧旅游下的智慧公厕功能和特点?智慧旅游是景区、公园、游乐场、文化场馆等领域的一种信息化解决方案,智慧公厕是智慧旅游极为重要的一部分,能大大提升游客满意度。智慧公厕采用物联网、互联网、大数据、云计算等技术,实现旅游景…

使用Excel连接Azure DevOps自动退出的问题

Azure DevOps Server (原名TFS)是微软公司的软件开发管理平台,也是著名的软件开发过程管理工具;系统中记录了软件开发过程中的需求、问题、缺陷和迭代计划等各种软件开发工作项数据。 对于工作项数据的批量操作(例如新增和编辑),Excel是一个非…

zabbix图表时间与服务器时间不一致问题

部署完zabbix后,有时候会发现zabbix服务器的时间明明是对的,但是图标的时间不对,通过以下的配置可以快速解决。 登录zabbix-nginx容器 docker exec -u root -it docker-compose-zabbix-zabbix-web-nginx-mysql-1 bash修改php配置文件 vi /e…

SpringData ElasticSearch - 简化开发,完美适配 Spring 生态

目录 一、SpringData ElasticSearch 1.1、环境配置 1.2、创建实体类 1.3、ElasticsearchRestTemplate 的使用 1.3.1、创建索引 设置映射 1.3.2、简单的增删改查 1.3.3、搜索 1.4、ElasticsearchRepository 1.4.1、使用方式 1.4.2、简单的增删改查 1.4.3、分页排序查…

Linux系统下安装jdk与tomcat【linux】

一、yum介绍 linux下的jdk安装以及环境配置,有两种常用方法: 1.使用yum一键安装。 2.手动安装,在Oracle官网下载好需要的jdk版本,上传解压并配置环境。 这里介绍第一种方法,在此之前简单了解下yum。 yum 介绍 yum&…

57 npm run build 和 npm run serve 的差异

前言 npm run serve 和 npm run build 的差异 这里主要是从 vue-cli 的流程 来看一下 我们经常用到的这两个命令, 他到传递给 webpack 打包的时候, 的一个具体的差异, 大致是配置了那些东西? 经过了那些流程 ? vue-cli 的 vue-plugin 的加载 内置的 plugin 列表如下, 依次…

【Go】二十、反射

文章目录 1、反射2、对基本数据类型反射3、对结构体进行反射4、获取变量的类别5、通过反射修改基本类型变量的值6、通过反射操作结构体的属性和方法 1、反射 //核心包 import ("reflect")通过反射: 可以在运行时动态获取变量的类型、获取结构体的信息&a…

【二叉树】Leetcode 124. 二叉树中的最大路径和【困难】

二叉树中的最大路径和 二叉树中的 路径 被定义为一条节点序列,序列中每对相邻节点之间都存在一条边。同一个节点在一条路径序列中 至多出现一次 。该路径 至少包含一个 节点,且不一定经过根节点。 路径和 是路径中各节点值的总和。 给你一个二叉树的根…

【QT+QGIS跨平台编译】056:【pdal_json_schema+Qt跨平台编译】(一套代码、一套框架,跨平台编译)

点击查看专栏目录 文章目录 一、pdal_json_schema介绍二、pdal下载三、文件分析四、pro文件五、编译实践一、pdal_json_schema介绍 pdal_json_schema 是与 PDAL(Point Data Abstraction Library)相关的 JSON 模式文件。PDAL 是一个用于处理和分析点云数据的开源库。JSON 模式…

Flutter混淆方案对应用性能的影响分析与优化

在移动应用开发中,保护应用代码安全至关重要。Flutter 提供了简单易用的混淆工具,帮助开发者在构建 release 版本应用时有效保护代码。本文将介绍如何在 Flutter 应用中使用混淆,并提供了相关的操作步骤和注意事项。 📝 摘要 本…

【C++】lambda 表达式 / 包装器 / bind 绑定

目录 一. lambda 表达式1. lambda 表达式的语法1. lambda 表达式的使用2. lambda 表达式的捕捉列表 二. 包装器三. bind 绑定 一. lambda 表达式 Lambda 表达式是 C11 标准引入的一种新特性, 它提供了一种方便的方式来定义匿名函数. lambda 表达式实际上是一个匿名的仿函数; …

【FTP,EMail】

文章目录 FTPFTP:文件传输协议FTP: 控制连接与数据连接分开FTP命令、响应 EMail电子邮件(EMail)邮件服务器EMail: SMTP [RFC 2821]SMTP:总结 FTP FTP:文件传输协议 向远程主机上传输文件或从远程主机接收文件。客户/服…

使用tcpdump和wireshark进行服务器抓包分析

目录 前言 1.tcpdump简介 2.Wireshark简介 3.实际案例 4.代码示例 5.总结 前言 服务器抓包分析是一种非常常见和有效的网络故障排查和性能优化手段。通过捕获服务器上的网络流量,可以帮助我们深入了解服务器与其它设备之间的通信情况,发现问题并进…