[發(fā)明專利]基于多線程運(yùn)行、動(dòng)態(tài)全局變量處理的仿真曲線顯示方法在審
| 申請(qǐng)?zhí)枺?/td> | 202110612081.0 | 申請(qǐng)日: | 2021-06-02 |
| 公開(公告)號(hào): | CN113360280A | 公開(公告)日: | 2021-09-07 |
| 發(fā)明(設(shè)計(jì))人: | 郝康康;付翔;呂文軍 | 申請(qǐng)(專利權(quán))人: | 西安中銳創(chuàng)聯(lián)科技有限公司 |
| 主分類號(hào): | G06F9/50 | 分類號(hào): | G06F9/50;G06F9/52;G06F30/20 |
| 代理公司: | 西安科果果知識(shí)產(chǎn)權(quán)代理事務(wù)所(普通合伙) 61233 | 代理人: | 李英俊 |
| 地址: | 710075 陜西省西安市高新區(qū)高*** | 國(guó)省代碼: | 陜西;61 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 基于 多線程 運(yùn)行 動(dòng)態(tài) 全局變量 處理 仿真 曲線 顯示 方法 | ||
本發(fā)明公開了基于多線程運(yùn)行、動(dòng)態(tài)全局變量處理的仿真曲線顯示方法,在仿真程序中,分別創(chuàng)建負(fù)責(zé)顯示圖像或曲線的主線程、用于數(shù)據(jù)處理的子線程;主線程和子線程并行執(zhí)行異步同時(shí):仿真運(yùn)行開始后,子線程按照仿真要求進(jìn)行數(shù)據(jù)運(yùn)算,獲取鎖并將運(yùn)算得到的數(shù)據(jù)結(jié)果寫入動(dòng)態(tài)全局變量,然后釋放鎖;主線程啟動(dòng)定時(shí)器并定時(shí)刷新顯示界面,當(dāng)刷新界面時(shí)先獲取鎖,然后將動(dòng)態(tài)全局變量的數(shù)據(jù)拷貝至臨時(shí)變量,再清空全局變量數(shù)據(jù)并釋放鎖,動(dòng)態(tài)全局變量等待被寫入;主線程使用臨時(shí)變量中的數(shù)據(jù)對(duì)顯示界面刷新。本發(fā)明采用“多線程+動(dòng)態(tài)全局變量”的方式對(duì)曲線顯示進(jìn)行優(yōu)化改進(jìn),能夠在提高仿真效率的同時(shí)減少內(nèi)存使用,兼顧時(shí)間效率與空間效率。
技術(shù)領(lǐng)域
本發(fā)明屬于技術(shù)領(lǐng)域,涉及一種基于多線程運(yùn)行、動(dòng)態(tài)全局變量處理的仿真曲線顯示方法。
背景技術(shù)
隨著計(jì)算機(jī)應(yīng)用的日益深入和生產(chǎn)過程自動(dòng)化程度的不斷提供,越來越多的監(jiān)控和仿真系統(tǒng)提出了實(shí)時(shí)數(shù)據(jù)動(dòng)態(tài)圖形顯示的需求,視算(Visual Computing)的一個(gè)重要部分--數(shù)據(jù)可視化(DataVisualization),例如在系統(tǒng)仿真領(lǐng)域,需要對(duì)仿真產(chǎn)生的數(shù)據(jù)進(jìn)行曲線繪制,來分析各個(gè)模型仿真過程的狀態(tài)變化。
目前支持曲線繪制,圖形顯示的計(jì)算機(jī)語言很多,例如VB,C#,JAVA,QT等。Qt是一個(gè)1991年由Qt Company開發(fā)的跨平臺(tái)C++圖形用戶界面應(yīng)用程序開發(fā)框架。它既可以開發(fā)GUI程序,也可用于開發(fā)非GUI程序,比如控制臺(tái)工具和服務(wù)器。Qt是面向?qū)ο蟮目蚣埽褂锰厥獾拇a生成擴(kuò)展(稱為元對(duì)象編譯器(Meta Object Compiler,moc))以及一些宏,Qt很容易擴(kuò)展,并且允許真正地組件編程。QT底層使用C/C++編寫,可以很好的調(diào)用C/C++相關(guān)的接口同時(shí)支持跨平臺(tái)。
在計(jì)算機(jī)仿真過程中,需要對(duì)計(jì)算結(jié)果數(shù)據(jù)進(jìn)行后處理以便工程分析和觀察,通常包括曲線圖、柱狀圖、散點(diǎn)圖、云圖、等不同種類的圖形繪制。目前QT實(shí)現(xiàn)曲線動(dòng)態(tài)顯示的主要技術(shù)是信號(hào)槽機(jī)制,使用信號(hào)槽方式可以解決數(shù)據(jù)量小,性能要求不是很高的場(chǎng)景;但是對(duì)于數(shù)據(jù)量大,性能要求比較高的場(chǎng)景,這種方式比較耗時(shí)。為解決這一問題,傳統(tǒng)的解決方案是引入“多線程”機(jī)制,將“仿真計(jì)算”和“圖形實(shí)時(shí)繪制”兩部分分別按照不同的線程進(jìn)行處理,以提高運(yùn)行效率。然而,對(duì)于數(shù)據(jù)量更大、性能要求更高的場(chǎng)景,這種處理方式顯然無法滿足要求。
目前實(shí)現(xiàn)曲線動(dòng)態(tài)顯示的主要技術(shù)是信號(hào)槽機(jī)制。效率要求高的一般采用“多線程+信號(hào)槽”。使用“多線程+信號(hào)槽”方式可以解決數(shù)據(jù)量小,性能要求不是很高的場(chǎng)景。對(duì)于數(shù)據(jù)量很大,且性能要求比較高的場(chǎng)景,這種方式的處理效率就明顯不足。因?yàn)楹笈_(tái)每仿真完成一次就調(diào)用信號(hào)和槽刷新界面,這樣頻繁的刷新界面比較耗時(shí)。例如:當(dāng)仿真時(shí)長(zhǎng)100s,通訊步長(zhǎng)0.01秒,每通訊一次界面就要刷新一次,整個(gè)運(yùn)行完要刷新界面10000次,僅僅采用“多線程”的處理方式明顯不足以保證較高的運(yùn)行效率。
發(fā)明內(nèi)容
為進(jìn)一步提高運(yùn)算效率,本發(fā)明提出基于多線程運(yùn)行、動(dòng)態(tài)全局變量處理的仿真曲線顯示方法,采用“多線程+動(dòng)態(tài)全局變量”的方式對(duì)曲線顯示進(jìn)行優(yōu)化改進(jìn),能夠在提高仿真效率的同時(shí)減少內(nèi)存使用,兼顧時(shí)間效率與空間效率。
本發(fā)明是通過以下技術(shù)方案來實(shí)現(xiàn):
基于多線程運(yùn)行、動(dòng)態(tài)全局變量處理的仿真曲線顯示方法,包括以下操作:
在仿真程序中,分別創(chuàng)建負(fù)責(zé)顯示圖像或曲線的主線程、用于數(shù)據(jù)處理的子線程;主線程和子線程并行執(zhí)行異步同時(shí):
仿真運(yùn)行開始后,子線程按照仿真要求進(jìn)行數(shù)據(jù)運(yùn)算,獲取鎖并將運(yùn)算得到的數(shù)據(jù)結(jié)果寫入動(dòng)態(tài)全局變量,然后釋放鎖;
主線程啟動(dòng)定時(shí)器并定時(shí)刷新顯示界面,當(dāng)刷新界面時(shí)先獲取鎖,然后將動(dòng)態(tài)全局變量的數(shù)據(jù)拷貝至臨時(shí)變量,再清空全局變量數(shù)據(jù)并釋放鎖,動(dòng)態(tài)全局變量等待被寫入;主線程使用臨時(shí)變量中的數(shù)據(jù)對(duì)顯示界面刷新;
當(dāng)動(dòng)態(tài)全局變量中沒有數(shù)據(jù)、全局變量和臨時(shí)變量中的數(shù)據(jù)都刷新完,仿真運(yùn)行結(jié)束。
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于西安中銳創(chuàng)聯(lián)科技有限公司,未經(jīng)西安中銳創(chuàng)聯(lián)科技有限公司許可,擅自商用是侵權(quán)行為。如果您想購(gòu)買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請(qǐng)聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202110612081.0/2.html,轉(zhuǎn)載請(qǐng)聲明來源鉆瓜專利網(wǎng)。
- 上一篇:一種蒸氨渣處理方法
- 下一篇:LED模組的智能化制造工藝及制造裝置
- 多線程應(yīng)用系統(tǒng)的異常處理方法和異常處理裝置
- 一種面向片上網(wǎng)絡(luò)的多線程調(diào)度實(shí)現(xiàn)方法
- 基于計(jì)算機(jī)多線程多核顯微鏡細(xì)胞圖像快速掃描處理方法
- 一種基于同步鎖的多線程處理方法、終端以及存儲(chǔ)介質(zhì)
- 多線程并發(fā)處理系統(tǒng)及方法
- 海外控股估值流程控制方法、裝置、計(jì)算機(jī)設(shè)備及存儲(chǔ)介質(zhì)
- 讀數(shù)方法、電子裝置、計(jì)算機(jī)設(shè)備及存儲(chǔ)介質(zhì)
- 一種基于云平臺(tái)多線程調(diào)度的方法、系統(tǒng)、設(shè)備及介質(zhì)
- 一種基于云平臺(tái)的前端多線程調(diào)度方法和系統(tǒng)
- 多線程調(diào)度方法、裝置、電子設(shè)備及存儲(chǔ)介質(zhì)
- 運(yùn)行控制裝置及運(yùn)行控制方法
- 運(yùn)行支援裝置、運(yùn)行支援系統(tǒng)以及運(yùn)行支援程序
- 列車運(yùn)行處理方法、運(yùn)行處理裝置和運(yùn)行調(diào)度系統(tǒng)
- 運(yùn)行監(jiān)測(cè)系統(tǒng)及運(yùn)行監(jiān)測(cè)方法
- 運(yùn)行控制裝置及運(yùn)行控制方法
- 運(yùn)行曲線制作裝置、運(yùn)行輔助裝置以及運(yùn)行控制裝置
- 運(yùn)行支持裝置、車輛、運(yùn)行管理裝置和運(yùn)行支持方法
- 運(yùn)行計(jì)劃方法、運(yùn)行控制裝置和運(yùn)行計(jì)劃系統(tǒng)
- 運(yùn)行控制裝置、運(yùn)行管理系統(tǒng)、運(yùn)行控制方法以及車輛
- 自動(dòng)建模運(yùn)行系統(tǒng)及運(yùn)行方法
- 動(dòng)態(tài)矢量譯碼方法和動(dòng)態(tài)矢量譯碼裝置
- 動(dòng)態(tài)口令的顯示方法及動(dòng)態(tài)令牌
- 動(dòng)態(tài)庫(kù)管理方法和裝置
- 動(dòng)態(tài)令牌的身份認(rèn)證方法及裝置
- 令牌、動(dòng)態(tài)口令生成方法、動(dòng)態(tài)口令認(rèn)證方法及系統(tǒng)
- 一種動(dòng)態(tài)模糊控制系統(tǒng)
- 一種基于動(dòng)態(tài)信號(hào)的POS機(jī)和安全保護(hù)方法
- 圖像動(dòng)態(tài)展示的方法、裝置、系統(tǒng)及介質(zhì)
- 一種基于POS機(jī)聚合碼功能分離顯示動(dòng)態(tài)聚合碼的系統(tǒng)
- 基于動(dòng)態(tài)口令的身份認(rèn)證方法、裝置和動(dòng)態(tài)令牌





