Queue是什麼?

更新 Jan 9, 2020

產品資訊

Software

  • LabVIEW Base
  • LabVIEW Full

問題敘述

有人曾建議我在程式碼中使用Queue。Queue是什麼?我要怎麼使用它?

解決方案

Queue會依照資料數據先進先出的順序來運作。舉例來說,在速食店中列隊等候的顧客就是一種Queue。第一位到達的客戶能夠最優先被服務。

Queue適合被使用在製造者 (producer)/使用者 (consumer)的情況,製造者 (producer)/使用者 (consumer)的程式中,一部分程式碼用於創建資料,供另一部分程式碼做使用。使用Queue的優點是製造者和使用者的處理速度不必相同。假如接收資料的速度比產生資料的速度來的慢,則Queue最終將會滿載,且製造者程式碼將被迫等待使用者從Queue中擷取出資料後,才能再將產生的新資料繼續放進Queue中。

相關資訊

與array不同,您無法隨機存取Queue中的元素 (element)。Queue僅能夠作為一個緩衝區,供您enqueue (增加/插入) 和dequeue (減少/移除)元素。欲查看Queue中所有元素的唯一方法是逐個dequeue。另外您也無法對Queue中所有的元素進行資料操作。

您可查看LabVIEW中的相關範例程式。點選Help » Find Examples打開LabVIEW的Example Finder,然後在Search頁面中輸入Queue搜尋。

有關其他類型的數據傳輸相關資訊,請參閱Data Communication Methods in LabVIEW