LabVIEW之同步——集合点vi
2024-10-21 23:00:31
这是一个对我来讲比较偏的工具,做过很多项目,没有用它也能完成各种各样的项目。
今天我们一起来了解下这个工具,所以称之为工具,因为它属于NI LabVIEW的白色节点,一般是有官方利用LabVIEW代码重新封装的高阶节点。
这个板块位于:
首先我们来看它的帮助文档:
下面我们来举个例子:
分别创建2个vi:未命名2和未命名3;未命名2创建了5个同步点,未命名3创建了3个同步点,但是他们的名称一样;所以看谁先运行,会得到不以言的效果;
测试情况1:未命名2先运行,此时将会等待另外2个同步点,当未命名3运行后,5个同步点集齐,程序完成同步,最后可以看到运行结果,得到的时间一样,且很准确,实现了2个vi中的共计5个并行运行的代码同步执行。
测试情况2:先运行未命名3,即先创建一个3个集合点的同步,则程序在等待第三个集合点;接着运行未命名2,则会得到第三个集合点,未命名2中的其中一个线程与未命名3中的2个同步执行完成。同时会发现未命名2产生一个错误提示‘’
可以理解这个错误是有由于总共3个集合点,因为谁先运行,由谁创建。而未命名2中将会多出2个等待集合,而此时次同步机制确已经满足3个集合点而而结束运行。所以它将会放回2个错误;
总结:给予队列的同步集合vi使用的方法还是非常简单,它的作用也是很大的,当你需要实现多个线程的某一部分代码的同步执行时,使用这里的节点将会大大提供开发效率和可靠性。当然,你也可以自己实现。
工欲善其事,必先利其器。有趁手的工具,它会更香。
最新文章
- 【转】关于编写性能高效的javascript事件的技术
- 高仿一元云购IOS应用源码项目
- http://poj.org/problem?id=3278(bfs)
- Audio Session Interruption
- ios之如何删除默认的约束
- 剑指Offer17 二叉树的镜像
- iptables开始ftp
- Android 使用日常
- delphi 仅带下划线的TEdit控件
- java学习笔记3
- 控制反转IOC与依赖注入DI【转】
- C语言之二维数组
- accp8.0转换教材第11章JAjax加护扩展理解与练习
- jQuery简介和基础
- select、poll、epoll的区别
- zombodb 聚合函数
- python网络编程基础之socket粘包现象
- HDU2027:统计元音
- 基于prometheus监控k8s集群
- c++ 插入容器元素(insert)