国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于多線程的自動站數(shù)據(jù)處理系統(tǒng)

2012-01-05 06:44:12高鈺杰廖偉平
關(guān)鍵詞:單站功能模塊線程

黃 志, 高鈺杰, 廖偉平

(廣西區(qū)氣象信息中心,廣西南寧530219)

0 引言

根據(jù)廣西區(qū)局下發(fā)《關(guān)于調(diào)整自動氣象站觀測傳輸業(yè)務(wù)的通知》(桂氣測函[2011]31號)文件精神,自2011年5月23日09時(北京時)全區(qū)所有自動氣象站傳輸業(yè)務(wù)調(diào)整為30分鐘上傳一次觀測數(shù)據(jù)。

調(diào)整后自動站數(shù)據(jù)(大監(jiān)自動站和區(qū)域自動站)傳輸頻率為每半小時傳輸一次,每次共1400多個數(shù)據(jù)文件(目前共4種),以往的單線程處理程序?qū)?400多個文件采用串行處理,在國家局傳輸考核時效(整點(diǎn)8分鐘內(nèi))還是可以完成。

隨著單站數(shù)據(jù)的不斷增多和應(yīng)用需求的提高,9類自動站數(shù)據(jù)傳輸將在不久的將來成為現(xiàn)實(shí),屆時每次上傳的單站數(shù)據(jù)將為5000多個,如果遇到天氣過程則需要每10分鐘甚至每5分鐘進(jìn)行數(shù)據(jù)加密傳輸,以往的單線程的處理方式將很難在時效內(nèi)快速高效處理所有的單站文件,為此,擬在對文件類別分類的同時采用多線程多路實(shí)時并發(fā)處理機(jī)制,讓其每個獨(dú)立線程對相應(yīng)類別的自動站單站文件進(jìn)行數(shù)據(jù)文件合并打包、上傳以及信息入庫,從而實(shí)現(xiàn)每類數(shù)據(jù)都是隨來隨處理,極大提高處理時效。圖1為單線程自動站系統(tǒng)處理框圖。

1 系統(tǒng)實(shí)現(xiàn)技術(shù)與技術(shù)特點(diǎn)

1.1 Delphi面向?qū)ο箝_發(fā)平臺

Delphi是Borland公司推出的一個集成開發(fā)環(huán)境(IDE),使用的核心是由傳統(tǒng)Pascal語言發(fā)展而來的Object Pascal,以圖形用戶界面為開發(fā)環(huán)境,透過IDE、VCL工具與編譯器,配合連結(jié)數(shù)據(jù)庫的功能,構(gòu)成一個以面向?qū)ο蟪绦蛟O(shè)計(jì)為中心的應(yīng)用程序開發(fā)工具??稍?Windows3.x、Windows95、WindowsNT、WindowsXP、Windows Vista、Windows7等環(huán)境下使用 。當(dāng)前 ,DELPHI也可以在LINUX平臺上開發(fā)應(yīng)用,其在LINUX上的對應(yīng)產(chǎn)品Kylix。

Delphi被稱為第四代編程語言,具有簡單、高效、功能強(qiáng)大的特點(diǎn),提供各種開發(fā)工具,包括集成環(huán)境、圖像編輯(Image Editor),以及各種開發(fā)數(shù)據(jù)庫的應(yīng)用程序,如DesktopDataBase Expert等。除此之外,還允許用戶掛接其他的應(yīng)用程序開發(fā)工具,如Borland公司的資源編輯器(Resourse Workshop)。在Delphi眾多的優(yōu)勢當(dāng)中,在數(shù)據(jù)庫方面的特長顯得尤為突出:適應(yīng)于多種數(shù)據(jù)庫結(jié)構(gòu),從客戶機(jī)/服務(wù)機(jī)模式到多層數(shù)據(jù)結(jié)構(gòu)模式;高效率的數(shù)據(jù)庫管理系統(tǒng)和新一代更先進(jìn)的數(shù)據(jù)庫引擎;最新的數(shù)據(jù)分析手段和提供大量的企業(yè)組件。

圖1 單線程自動站系統(tǒng)處理框圖

1.2 多線程技術(shù)

每個正在系統(tǒng)上運(yùn)行的程序都是一個進(jìn)程,進(jìn)程是具有一定獨(dú)立功能的程序關(guān)于某個數(shù)據(jù)集合上的一次運(yùn)行活動,進(jìn)程是系統(tǒng)進(jìn)行資源分配和調(diào)度的一個獨(dú)立單位。線程是進(jìn)程的一個實(shí)體,是CPU調(diào)度和分派的基本單位,是比進(jìn)程更小的能獨(dú)立運(yùn)行的基本單位。線程不擁有系統(tǒng)資源,只擁有一點(diǎn)在運(yùn)行中必不可少的資源(如程序計(jì)數(shù)器,一組寄存器和棧),但是它可與同屬一個進(jìn)程的其他的線程共享進(jìn)程所擁有的全部資源。一個線程可以創(chuàng)建和撤銷另一個線程;同一個進(jìn)程中的多個線程之間可以并發(fā)執(zhí)行。

單線程就是一個進(jìn)程中只能有一個線程,剩下的進(jìn)程必須等待當(dāng)前的線程執(zhí)行完。這種模型的缺點(diǎn)在于系統(tǒng)完成一個很小的任務(wù)都必須占用很長的時間。多線程就是進(jìn)程有多個線程,是為了同步完成多項(xiàng)任務(wù),不是為了提高運(yùn)行效率,而是為了提高資源使用效率來提高系統(tǒng)的效率。

2 系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)

圖2為多線程自動站系統(tǒng)處理框圖。對比圖1可以發(fā)現(xiàn),此系統(tǒng)對文件進(jìn)行了分類,并采用了單獨(dú)的FTP發(fā)送線程,每個線程各負(fù)其責(zé),互不干擾,即使某一線程運(yùn)行出現(xiàn)故障,其他線程也能正常運(yùn)行。

圖2 多線程自動站系統(tǒng)處理框圖

2.1 系統(tǒng)功能設(shè)計(jì)

系統(tǒng)分為4個功能模塊,每個模塊由一個線程負(fù)責(zé),同時并發(fā)處理,分別介紹4個功能模塊的具體職能。系統(tǒng)處理邏輯流程圖如圖3所示。

功能模塊1:大監(jiān)站處理子線程

此線程主要負(fù)責(zé)大監(jiān)自動站數(shù)據(jù)文件的數(shù)據(jù)格式檢查,并對格檢后的單站文件進(jìn)行數(shù)據(jù)打包合并生成合并文件,然后發(fā)送至以FTP方式發(fā)往國家局的發(fā)送目錄;之后轉(zhuǎn)移單站文件至相應(yīng)的單站存儲目錄文件夾;最后將所有處理之后的單站數(shù)據(jù)文件寫入相應(yīng)的大監(jiān)站日志文件,以備日后查閱核對。

功能模塊2:區(qū)域站處理子線程

此線程與功能模塊1相似,通過區(qū)分文件名處理區(qū)域自動站單站文件。

功能模塊3:單雨量站處理子線程

此線程主要負(fù)責(zé)在已處理過的區(qū)域自動站數(shù)據(jù)中搜索其中的單雨量站,然后制作生成單雨量站文件,并轉(zhuǎn)移至至以FTP方式發(fā)往國家局的發(fā)送目錄;此外線程還負(fù)責(zé)單站源目錄的單站數(shù)量監(jiān)控,方便值班人員監(jiān)控程序的運(yùn)行狀況。(如果單站源目錄的文件數(shù)量不減少,證明程序卡死了,需要重啟,單線程就很難實(shí)現(xiàn)這樣的功能)

功能模塊4:FTP發(fā)送文件線程

此線程主要負(fù)責(zé)將發(fā)送目錄的合并文件通過FTP的方式發(fā)往國家局指定目錄,并將合并文件數(shù)據(jù)信息入庫備查,此外還有一些對入庫操作失敗的異常處理,以保證線程的正常運(yùn)行。

此外,系統(tǒng)可以根據(jù)實(shí)際的處理情況,增加和減少線程數(shù)量,隨著文件類型和文件數(shù)量的不斷增多,可以以模塊的形式增加線程,并且代碼的修改量也較小,適應(yīng)性很強(qiáng),方便系統(tǒng)的整合。

圖3 多線程自動站處理邏輯流程圖

圖4 系統(tǒng)運(yùn)行截面圖

2.2 系統(tǒng)運(yùn)行情況對比

目前系統(tǒng)已經(jīng)處于業(yè)務(wù)運(yùn)行狀態(tài),運(yùn)行情況良好并有很好的交互性,較之前的單線程處理模式處理速度明顯提升,不會出現(xiàn)單線程處理模式在程序運(yùn)行過程中因?yàn)槌绦颡?dú)占資源而造成界面空白鎖死,不能拖動和操作。表1為單線程與多線程系統(tǒng)運(yùn)行參數(shù)對比,圖4是系統(tǒng)運(yùn)行界面圖。

表1 單線程與多線程系統(tǒng)運(yùn)行參數(shù)對比

3 結(jié)束語

系統(tǒng)目前運(yùn)行穩(wěn)定,系統(tǒng)因?yàn)楫惓M顺龅臋C(jī)率較以前大為減小。由于采用了多線程技術(shù),使系統(tǒng)處理數(shù)據(jù)的速度較原來的單線程大幅提高,這為以后快速處理大數(shù)據(jù)量分鐘加密數(shù)據(jù)提供了保證。系統(tǒng)的線程之間相互獨(dú)立,代碼模塊可以重復(fù)利用,具有較好的拓展性,為類似系統(tǒng)整合提供了技術(shù)支持;可利用多線程將目前運(yùn)行的多個獨(dú)立子系統(tǒng)整合為集約化數(shù)據(jù)綜合處理系統(tǒng)。在以后的工作當(dāng)中可以將自動站的單站數(shù)據(jù)信息入庫功能添加至線程1和2中,以完善系統(tǒng)功能;同時盡可能改善程序結(jié)構(gòu)和容錯機(jī)制,提高系統(tǒng)運(yùn)行的穩(wěn)定性,減少異常處理故障的發(fā)生。

[1] 代峰燕,劉興華,劉松,等.多線程技術(shù)在測控系統(tǒng)中的實(shí)現(xiàn)[J].北京石油化工學(xué)院學(xué)報(bào),2011,(1).

[2] (日)結(jié)城浩.博碩文化譯.Java多線程設(shè)計(jì)模式[M].北京:中國鐵道出版社,2005.

[3] 電腦編程技巧與維護(hù)雜志社.DELPHI編程典型實(shí)例解析[M].北京:中國水利水電出版社,2007.

[4] 梁水,賽奎春.Delphi開發(fā)典型模塊大全[M].北京:人民郵電出版社,2009.

[5] 王惠平.基于多線程溫度控制專家系統(tǒng)[M].現(xiàn)代電子技術(shù),2012,35(2).

[6] 黃文鈺.Delphi 8程序設(shè)計(jì)經(jīng)典解析[M].北京:清華大學(xué)出版社,2006.

[7] 薛建軍,周杰,杜景林,等.基于多線程的實(shí)時與非確定時氣象資料處理[J].信息技術(shù),2011,(11).

[8] 侯雪蓮,張承明,高靖妹.多線程下載系統(tǒng)中的關(guān)鍵技術(shù)探析[J].北京電力高等??茖W(xué)校學(xué)報(bào),2011,(7).

[9] 梁水,張立科.Delphi開發(fā)技術(shù)大全[M].北京:人民郵電出版社,2007.

[10] 寧正元.Delphi開發(fā)技術(shù)大全[M].北京:水利水電出版社,2005.

猜你喜歡
單站功能模塊線程
穩(wěn)定的紅牛有多強(qiáng),維斯塔潘單站大滿貫
——2022 F1意大利大獎賽
世界汽車(2022年5期)2022-06-10 10:18:36
單站優(yōu)化,打造綜合生態(tài)圈——專訪中國石油遼寧沈陽銷售分公司副總經(jīng)理梁洪濤
基于方位角和勻速圓周運(yùn)動的單站無源定位算法
淺談linux多線程協(xié)作
基于ASP.NET標(biāo)準(zhǔn)的采購管理系統(tǒng)研究
輸電線路附著物測算系統(tǒng)測算功能模塊的研究
M市石油裝備公服平臺網(wǎng)站主要功能模塊設(shè)計(jì)與實(shí)現(xiàn)
石油知識(2016年2期)2016-02-28 16:20:16
功能模塊的設(shè)計(jì)與應(yīng)用研究
Linux線程實(shí)現(xiàn)技術(shù)研究
韻律曲線對單站大到暴雨的消空訂正
龙口市| 板桥市| 布尔津县| 玛曲县| 威信县| 牡丹江市| 镇康县| 公主岭市| 班戈县| 盖州市| 泉州市| 巩义市| 鄂温| 永泰县| 广昌县| 潜山县| 和林格尔县| 盐源县| 昌江| 绥德县| 阿图什市| 吕梁市| 平安县| 昭平县| 庆元县| 太和县| 高雄县| 岑溪市| 台安县| 和平县| 容城县| 德化县| 泸州市| 舟山市| 房产| 长阳| 嘉义县| 星座| 汉中市| 安多县| 栖霞市|