最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

LabVIEW可重入VI,VI模板和動態(tài)VI之間的差異

2023-07-22 22:02 作者:bjcyck  | 我要投稿

LabVIEW可重入VI,VI模板和動態(tài)VI之間的差異

應(yīng)該在何時使用可重入VI、模板VI和動態(tài)調(diào)用VI?這三種類型之間有什么區(qū)別?

可重入VI

當(dāng)想要同時運行同一VI的多個實例時,將使用可重入VI。當(dāng)VI不可重入時,VI只有一個數(shù)據(jù)空間。因此,一次只能有一個調(diào)用者運行VI,因此調(diào)用者可能必須“等待輪到它”時才能使用VI。這是VI的默認選項,但可以將VI設(shè)置為可重入。其中有兩種類型的重入:共享和預(yù)分配。

共享的可重入VI

如果選擇了共享克隆可重入執(zhí)行選項,則VI會具有一個數(shù)據(jù)空間池(與克隆池相同)。最初在調(diào)用VI開始時只創(chuàng)建兩個克隆。調(diào)用者將使用其中一個數(shù)據(jù)空間,但它并不知道使用的時哪個數(shù)據(jù)空間,并且它可能是后續(xù)調(diào)用中的不同實例。當(dāng)池中沒有足夠的數(shù)據(jù)空間(克?。┯糜谝欢〝?shù)量調(diào)用者同時調(diào)用時,將創(chuàng)建新的數(shù)據(jù)空間(克?。┎⑵涮砑拥匠刂?。這里“實例之間共享克隆”中的“共享”一詞意味著數(shù)據(jù)空間可以由多個調(diào)用者隨時間使用。如果有20個針對SubVI的調(diào)用,但是這些調(diào)用發(fā)生的時間最多中只有兩個調(diào)用同時進行,則池中只有兩個數(shù)據(jù)空間,它們將在20個調(diào)用中“共享”。由于根據(jù)當(dāng)前需要僅創(chuàng)建必要數(shù)量的克隆,因此優(yōu)化了存儲器使用。為了實現(xiàn)最快的執(zhí)行速率和最佳的內(nèi)存優(yōu)化,建議使用此選項。

預(yù)先分配的可重入VI

如果選擇了預(yù)分配克隆可重入執(zhí)行選項,則每個調(diào)用者都有自己的私有數(shù)據(jù)空間(和克?。?。如果有20次調(diào)用VI,則在調(diào)用VI開始時將創(chuàng)建20個克隆并將其添加到池中。如果調(diào)用模式與上述調(diào)用模式類似,則可能只有兩個同時忙碌。如果要對SubVI的給定實例的每次調(diào)用都使用相同的克?。ɡ?,如果SubVI需要將數(shù)據(jù)從這次調(diào)用保持到下次調(diào)用)的話,則使用這種類型的重入VI。共享克隆在這種情況下不起作用,因為您永遠不會知道SubVI的哪個實例上次使用了您將要使用的克隆,并且存儲的信息將在SubVI之間無法預(yù)測地“串?dāng)_”。?“預(yù)分配”意味著對于每次調(diào)用,都會創(chuàng)建該次調(diào)用的數(shù)據(jù)空間和克隆。預(yù)分配發(fā)生在VI運行之前。如果要打開同一VI的多個前面板,可重入的SubVI選項將不起作用。

如果要多次打開的VI是頂層VI,則可以將磁盤上的頂層VI復(fù)制到具有唯一名稱的臨時目錄并打開新文件實例,沒有必要復(fù)制任何SubVI。只需復(fù)制頂層VI,然后,您可以使用VI?Server打開并運行副本。

模板VI

可以將多實例面板制作成模板VI,然后每次從模板打開文件。?VI模板是具有?.vit?擴展名的VI??梢栽?文件?新建?從模板開始?下從模板創(chuàng)建新VI。這將創(chuàng)建一個具有自己內(nèi)存空間的VI的新實例。它們在創(chuàng)建時具有不同的存儲位置,且僅用作制作另一個VI的起點。然后,您需要配置新創(chuàng)建的VI是否可重入。

動態(tài)VI

可以使用VI?Server打開VI和VI模板。?VI?Server?用于動態(tài)加載和運行VI。使用SubVI時,加載頂層VI時會加載SubVI的代碼和數(shù)據(jù)空間。當(dāng)動態(tài)加載VI時,在VI服務(wù)器調(diào)用SubVI之前,不會加載其代碼,而不是將其用作SubVI并在調(diào)用主程序時加載代碼。這樣可以在啟動時節(jié)省內(nèi)存。

相關(guān)信息

完成以下步驟將VI更改為可重入:

  1. 導(dǎo)航到文件?VI屬性?。

  1. 導(dǎo)航到類別?執(zhí)行?。

  1. 確保Reentrancy選項設(shè)置為SharedPreallocated?。


LabVIEW可重入VI,VI模板和動態(tài)VI之間的差異的評論 (共 條)

分享到微博請遵守國家法律
安国市| 潜山县| 沙湾县| 新竹市| 曲阳县| 张家界市| 安康市| 西乡县| 林州市| 永兴县| 泰安市| 岳普湖县| 吴旗县| 玛纳斯县| 建始县| 安阳县| 郯城县| 彰武县| 辉县市| 鹤峰县| 仪征市| 陆良县| 巨鹿县| 凌源市| 余江县| 康定县| 白水县| 阿拉尔市| 桂东县| 临夏市| 宁德市| 永定县| 来凤县| 繁峙县| 密云县| 和硕县| 班玛县| 乌兰县| 江孜县| 郸城县| 陆河县|