LabVIEW的Framework(6):Queue与Notifier

      在两个循环间传递数据应该用什么方式呢?local variable当然可以,但是如果是数据采集循环与数据存储循环之间传递数据的话,local variable就不太够用了。因为数据保存到硬盘上是一项比较费时的工作,而数据采集对循环时间要求较高,因此两者之间就不能简单的通过local variable来进行数据传递了。
      在数据采集循环与数据存储循环之间,我们可以通过Queue(队列)来进行数据的传递。Queue这个名字很直观,想象一下,数据采集循环把采集到的数据排成一队,数据存储循环每次从队的排头取走一个数据进行保存,多么巧妙的构思。LabVIEW为我们提供了操作Queue所需要的VI,主要常用的有:Obtain Queue(获取或建立队列)、Release Queue(释放队列)、Enqueue Element(数据入列)、Dequeue Element(数据出列)、Get Queue Status(获取队列状态)另外还有几个VI,当需要的时候可以查看相关的说明。
      Notifier(消息通知器),实际上是一种特殊的队列,这个队列里最多只会存在一个数据,当有新的数据送入队列是,旧的数据就会被覆盖掉。那么,Notifier有什么用呢?可以用来进行循环间的流程控制。关于如何进行循环间的流程控制,这里就先不展开,下一篇马上就会有一个例子来展示。LabVIEW提供的操作Notifier主要常用的VI有:Obtain Notifier(获取或建立通知器)、Release Notifier(释放通知器)、Send Notification(发送通知)、Cancel Notification(取消通知)、Get Notifier Status(获取通知器状态)、Wait On Notification(等待通知)。另外的几个VI,需要的时候可以查看相关的说明。

你可能感兴趣的:(LabVIEW的Framework(6):Queue与Notifier)