- 相關(guān)推薦
LabVIEW創(chuàng )建DLL的方法
LabVIEW是一種程序開(kāi)發(fā)環(huán)境,由美國國家儀器(NI)公司研制開(kāi)發(fā)的,類(lèi)似于C和BASIC開(kāi)發(fā)環(huán)境,小編整理了LabVIEW創(chuàng )建DLL的方法,歡迎閱讀
LabVIEW創(chuàng )建DLL的方法
1、LabVIEW也可以創(chuàng )建DLL
2、調用規范說(shuō)明:
C調用規范時(shí),調用方負責清空堆棧。使用標準調用規范時(shí),被調用函數負責清空堆棧。
所以要確認您選擇了和DLL相同的調用規范
3、調用庫函數節點(diǎn)(CLF)中線(xiàn)程模式:
在UI線(xiàn)程中運行(Run in UIThread )模式;在任意線(xiàn)程中運行(Reentrant)模式。
Runin UI Thread 表示在用戶(hù)界面線(xiàn)程中調用,DLL 的執行期將等到用戶(hù)界面線(xiàn)程執行了DLL的導出函數調用時(shí)才開(kāi)始;Reentrant 表示允許多個(gè)線(xiàn)程同時(shí)調用這個(gè)DLL 。
4、線(xiàn)程模式的選擇原則:
如果DLL 為線(xiàn)程安全———簡(jiǎn)單地說(shuō),就是編制DLL過(guò)程中,充分考慮了線(xiàn)程保護的同步機制,如使用臨界區、互斥、信號量等,那么可以選用Reentrant 方式,這將有助于提高DLL調用的性能;如果你不確定DLL 是否為線(xiàn)程安全,選Run in UI Thread。
5、以下是LabVIEW Help中有關(guān)線(xiàn)程模式選擇原則的說(shuō)明:
線(xiàn)程——控制“調用庫函數節點(diǎn)”繼續在VI當前執行的線(xiàn)程執行或轉向用戶(hù)界面線(xiàn)程。默認狀態(tài)為在UI線(xiàn)程中運行。
在UI線(xiàn)程中運行——指定“調用庫函數節點(diǎn)”必須在用戶(hù)界面線(xiàn)程中運行。LabVIEW生成的共享庫在UI線(xiàn)程中運行時(shí),如通過(guò)在程序框圖中指定路徑動(dòng)態(tài)加載該共享庫,可導致LabVIEW掛起。
在任意線(xiàn)程中運行——指定“調用庫函數節點(diǎn)”繼續在VI當前執行的線(xiàn)程上運行。必須確保多個(gè)線(xiàn)程可同時(shí)調用函數。
注:對LabVIEW生成的共享庫的調用必須指定為在任意線(xiàn)程中運行。如配置“調用庫函數節點(diǎn)”調用LabVIEW生成的共享庫并指定在UI線(xiàn)程中運行,LabVIEW將可能掛起并請求重新啟動(dòng)系統。
6、綜上所述:LabVIEWDLL具有足夠的可以讓多個(gè)線(xiàn)程調用的安全性?梢苑判牡囊浴霸谌我饩(xiàn)程中運行”模式運行LabVIEW。如果以“在UI線(xiàn)程中運行”模式運行,如果動(dòng)態(tài)加載DLL路徑會(huì )導致程序掛起。
7、Labview編寫(xiě)的dll還有一個(gè)優(yōu)點(diǎn):調用時(shí)不需要為輸入參數的類(lèi)型發(fā)愁,他是自動(dòng)加載。
生成DLL文件的方法可以通過(guò)以下步驟進(jìn)行:
1、打開(kāi)LabVIEW,并打開(kāi)要生成DLL文件的VI。
2、在VI的左上方菜單欄中,選擇"File",然后選擇"Save with Options"。
3、在彈出的對話(huà)框中,選擇"Build Specifications"選項卡。
4、在這個(gè)選項卡中,選擇"New"創(chuàng )建一個(gè)新的構建規范。
5、在新的構建規范中,選擇"Shared Library (.dll)"作為構建目標。
6、在"Source Files"選項卡中,選擇要包含在DLL文件中的VI。
7、在"Destination"選項卡中,選擇生成的DLL文件存儲的目錄。
8、在"Settings"選項卡中,可以選擇更多的生成選項,如函數調用規范、輸出文件名等。
9、完成以上設置后,點(diǎn)擊"OK"按鈕生成DLL文件。
【LabVIEW創(chuàng )建DLL的方法】相關(guān)文章:
word創(chuàng )建編號的方法11-08
SQL2008定時(shí)任務(wù)作業(yè)創(chuàng )建方法03-29
javascript創(chuàng )建數組之聯(lián)合數組的使用方法06-23
茶葉的保存方法及選購方法12-13
網(wǎng)球的比賽方法計分方法12-07
XFire創(chuàng )建WebService實(shí)例06-04
如何創(chuàng )建班組文化05-31
采購的經(jīng)典方法02-26
綠茶的沖泡方法-泡綠茶的正確方法03-30