欧美色综合网_狠狠色狠色综合曰曰_麻豆精品一区二区av白丝在线_久久精品综合一区
網絡消費網 >  5G > > 正文
局域變量、全局變量和功能型全局變量
時間:2021-12-22 14:22:05
圖 6 新建全局變量將新建的全局變量VI的圖標拖入到VI的背面板中,如同調用一個子VI一樣,就可以完成對全局變量的引用,如圖 7所示。圖中使用了2個不同的VI,分別進行全局變量的讀和寫操作。圖 7 全局變量的引用1.3局域變量和全局變量的使用小結可以看出,LabVIEW中局域變量和全局變量的引入為數據的有效共享提供了非常便捷的途徑。但是正如前面所述,局域變量和全局變量需要占用大量的內存空間,降低了程序運行的效率,因此在實際過程中應酌情應用。此外,由于LabVIEW編程環境的并行特性,使得很多程序員在使用局域變量和全局變量時并沒有考慮到變量的“競爭冒險”問題。如圖 8所示,程序的本意是希望將Numeric的值加1然后再乘以2賦值給Numeric變量,但是由于LabVIEW采用了數據流運行方式,每一段代碼的開始運行時間幾乎是同時的(并行的),因此導致無法Numeric的輸出正確的值。圖 8 變量的競爭冒險以上舉得是一個比較明顯的例子,當程序變得龐大而復雜時,這種問題并不容易被發現并且很容易產生。特別是在使用全局變量時,如果程序員沒有非常清楚地明晰各個時刻全局變量中的值,那么很容易地讀到一些“意料之外”的數據。同時,在使用全局變量時,應該注意變量的初始化操作。雖然,這可以使用LabVIEW的Make Current Value Default菜單項實現,但是仍然推薦使用獨立的初始化VI為每一個全局變量顯式地賦初值。1.4Value屬性節點和局域變量的效率眾所周知,在LabVIEW中為一個Control賦值有Value屬性節點和局域變量2種方式;為一個Indicator賦值有直連、Value屬性節點和局域變量3種方式。那么這些方式有哪些區別和聯系呢?在實際過程中應該使用哪種方式呢?為了表示分析這三種賦值方式的區別,使用3個獨立的VI進行測試,如圖 9所示。可以看出,從時間上來看:Time(直連賦值) < Time(局域變量賦值) < Time(Value屬性節點賦值)。這說明Indicator直連賦值是最有效和直接的方式,它只是完成數據的顯示;而局域變量賦值需要完成對數據的拷貝,占用事件其次;Value屬性節點使用了VI Server技術,它需要完成對前面板控件的調用和刷新,占用時間較長。因此從運行時間上看,對控件的賦值應盡量采用直連或局域變量的方式,盡量少地使用屬性節點。圖 9 測試三種賦值方式所占用的時間1.5功能性全局變量為了克服局域變量和全局變量的“競爭冒險”潛在危險和復制數據副本的缺點,在LabVIEW中可以使用功能性全局變量代替全局變量的使用。因為全局變量的應用無非是讀取和寫入操作,因此可以使用LabVIEW的移位寄存器將數據空間強制共享。本節將建立一個功能性全局變量代替一個Numeric型的全局變量(下載),新建一個VI的前面板如圖 10所示,背面板如圖 11所示。程序使用了一個只運行一次的while循環,這是為了使用移位寄存器保存變量的值。使用一個枚舉控件表示對全局變量的操作(讀或者寫),而不同的case結構中響應相應的指令。圖 10 功能性全局變量的前面板圖 11 功能性全局變量的背面板新建一個VI調用上面的VI(稱為功能性全局變量),如圖 12所示,可以看出能夠輸出正確的值。圖 12 使用功能性全局變量由于每次讀和寫變量時,都是取自于while循環中的移位寄存器,因此能夠避免了數據拷貝的問題(當然,全局性功能變量VI不能夠設置為Reentrant可重載的)。由于功能性全局變量VI中加入了“錯誤簇”端子,因此使用ErrorIn和ErrorOut能夠很好地避免“競爭冒險”問題。從理論上說,功能性全局變量能夠完全取代傳統的全局變量。由于加入了“錯誤簇”和移位寄存器,避免了數據的重復拷貝。同時,使用枚舉型控件(可以設置為Type Def.控件)能夠使得整個程序結構更加清晰、明了,實現模塊化程序設計的目的。

關鍵詞: 局域變量全局變量功能

版權聲明:
    凡注明來網絡消費網的作品,版權均屬網絡消費網所有,未經授權不得轉載、摘編或利用其它方式使用上述作品。已經本網授權使用作品的,應在授權范圍內使用,并注明"來源:網絡消費網"。違反上述聲明者,本網將追究其相關法律責任。
    除來源署名為網絡消費網稿件外,其他所轉載內容之原創性、真實性、完整性、及時性本站不作任何保證或承諾,請讀者僅作參考并自行核實。
熱文

網站首頁 |網站簡介 | 關于我們 | 廣告業務 | 投稿信箱
 

Copyright © 2000-2020 www.yjkq2010.com All Rights Reserved.
 

中國網絡消費網 版權所有 未經書面授權 不得復制或建立鏡像
 

聯系郵箱:920 891 263@qq.com

備案號:京ICP備2022016840號-15

營業執照公示信息

欧美色综合网_狠狠色狠色综合曰曰_麻豆精品一区二区av白丝在线_久久精品综合一区
主站蜘蛛池模板: 欧美午夜国产| 亚洲欧美色婷婷| 亚洲电影专区| 久久久久88色偷偷免费| 欧美亚洲不卡| 亚洲在线网站| 国产欧美日韩在线视频| 欧美一区二区三区在线| 国产美女精品视频免费观看| 性伦欧美刺激片在线观看| 国产精自产拍久久久久久蜜| 午夜亚洲性色视频| 国产日产欧美一区| 久久精品一区二区三区中文字幕| 国内精品久久久久久久影视蜜臀 | 亚洲国产日韩欧美在线99| 久久婷婷蜜乳一本欲蜜臀| 有坂深雪在线一区| 欧美久久成人| 亚洲免费在线精品一区| 国产日韩欧美综合| 免费不卡中文字幕视频| a4yy欧美一区二区三区| 国产女主播视频一区二区| 久久精品在线免费观看| 亚洲国产精品成人va在线观看| 欧美国产亚洲另类动漫| 亚洲伊人色欲综合网| 影音欧美亚洲| 国产精品第13页| 欧美jjzz| 亚洲欧美日本国产专区一区| 一区二区三区在线视频播放| 欧美国产日本| 欧美一区二区大片| 91久久久久久久久| 国产精品视频精品| 欧美高清视频免费观看| 性色av香蕉一区二区| 日韩视频在线观看一区二区| 激情成人中文字幕|