1. 程式人生 > 其它 >【LabVIEW】佇列

【LabVIEW】佇列

佇列同步控制技術可以實現在多個VI之間或者同一VI不同執行緒之間同步任務和交換資料。
在LabVIEW中提供了‘同步’函式選板,包括通知器、佇列、訊號量、集合點、事件、首次呼叫函式。

1、特點

(1)先入先出
(2)可以設定佇列的大小,當佇列滿的時候,協調佇列的輸入和輸出,讓輸入(也就是元素如佇列)等待,直到出現了儲存空間,才執行輸入。


2、佇列上溢和下溢

使用佇列函式以不同的速率入佇列和出佇列資料,可能導致上溢或下溢。

入佇列迴圈使用元素入佇列函式將資料輸入佇列。
出佇列迴圈使用元素出佇列函式將資料移出佇列。

如入佇列迴圈執行速度高於出佇列迴圈,佇列將很快被填滿。

由於佇列固定大小為50,因此入佇列迴圈必須等待佇列空間,才能繼續輸入佇列元素。

同理,如出佇列迴圈執行速度高於入佇列迴圈,出佇列迴圈必須等待直至佇列中包含元素。

佇列狀態迴圈通過獲取佇列狀態函式顯示佇列中的當前元素。使用者單擊停止時,佇列狀態迴圈停止執行,並呼叫釋放通知器引用函式。這將使通知器引用無效,並導致入佇列迴圈和出佇列輸出錯誤並結束執行。

/*******相與枕藉乎舟中,不知東方之既白*******/