999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

主動對象模型在車次追蹤系統(tǒng)中的應用

2010-08-06 09:37:20張德明
鐵路計算機應用 2010年5期
關鍵詞:模塊化信息模型

張德明

(中國鐵道科學研究院通信信號研究所,北京100081)

模塊化是軟件設計中需要達到的主要目標之一。相對于傳統(tǒng)的面向過程的語言將數(shù)據(jù)結構與算法分開的方式,面向對象的設計方法將相關的數(shù)據(jù)結構與算法作為一個對象進行封裝,形成一個擁有自己狀態(tài)以及行為的整體。在設計對象時,通過有效地將相互關聯(lián)的數(shù)據(jù)結構與行為進行封裝,而向外只提供必要的接口,從而達到強內聚松藕合的效果,也就達到了模塊化的目標。

在單線程環(huán)境下,采用對象的方式確實能夠實現(xiàn)有效的封裝。然而,當軟件在多線程環(huán)境中運行時,對象在封裝上則會遇到并發(fā)范圍的問題。

圖1 對象交互的圖示

圖1展示了一個簡單多線程環(huán)境。其中,有A,B,C3個以面向對象方法進行封裝的對象,另外有兩個環(huán)境線程。系統(tǒng)期望兩個線程能夠在3個對象的并發(fā)運行中,完成系統(tǒng)的功能。我們可以看到,對象B雖然作為一個獨立的對象,封裝了自己的結構和行為。但是,由于它同時被兩個線程訪問,這樣,在對象C和A與B進行交互時,必須要考慮許多線程同步的因素,造成對象間訪問時接口復雜,也就是增強了對象間的耦合性。當系統(tǒng)的對象更多,并發(fā)線程更多時,對象間的耦合將會成倍增加,軟件的模塊化目標將遇到嚴重的挑戰(zhàn)。

1 車次追蹤系統(tǒng)

車次追蹤系統(tǒng)是調度監(jiān)督以及調度集中系統(tǒng)中一個重要的組成部分,車次追蹤系統(tǒng)根據(jù)現(xiàn)場采集的站場表示信息,無線車次號信息,行調臺下達的計劃信息,以及人工車次修改等信息,通過綜合運算,對追蹤區(qū)段的列車進行識別、跟蹤和校核,并在此基礎上提供自動報點,列車位置報告等信息。

在實際設計中,車次追蹤系統(tǒng)作為調度系統(tǒng)應用服務器中的一個模塊。作為整體的應用服務器,除了提供車次信息相關運算和服務外,還要提供通信信息轉發(fā)、表示信息處理和進路信息處理等功能。

當把應用服務器作為系統(tǒng)的環(huán)境,而將通信轉發(fā)、車次追蹤和進路控制分別作為一個重量級的對象時,將得到一個類似圖1的系統(tǒng)結構環(huán)境,見圖2。

圖2 車次追蹤的應用服務器環(huán)境框圖

在圖2的應用服務環(huán)境中,系統(tǒng)要求應用服務器所提供的各個功能,包括車次追蹤,通信轉發(fā),以及進路控制等都能夠并行運行,因此,系統(tǒng)中必須引入多個線程。 同時,由于各個服務模塊之間需要交互,以傳統(tǒng)面向對象模式進行設計,必然將多個線程引入對象中,造成同步的困難,增強了系統(tǒng)的藕合性。如何保證車次追蹤系統(tǒng)設計的模塊化,同時又保證模塊的并行性,如前面引用中提到的,是對系統(tǒng)設計方法的一個挑戰(zhàn)。

2 主動對象模型

我們以圖3來說明主動對象模型。

圖3 主動對象模型

圖3中的對象分為兩種,其中A,B,C同以前的對象一樣,只能被別的線程被動調用,稱之為被動對象。另外一種對象,作為A,B,C3個對象的運行環(huán)境,它將系統(tǒng)的線程進行了封裝,并提供了對外接口的郵箱,稱之為主動對象。

系統(tǒng)的運轉過程如下:當外界有任務或者指令要主動對象來完成時,外界系統(tǒng)將任務以消息形式發(fā)送到主動對象的郵箱隊列中,主動對象的封裝線程則一直對其郵箱隊列進行監(jiān)視,一旦發(fā)覺郵箱中有消息,將取出消息進行處理。當任務比較復雜時,主動對象將消息分發(fā)給相關的被動對象,讓其進行相應處理。

可以看出,在主動對象模型中,因為引入了主動對象,對任務線程進行了封裝,這樣就給其它被動對象提供了一個單線程的環(huán)境。在對A,B,C等各個被動對象進行算法設計時,只需要考慮基本的業(yè)務邏輯,而不需要考慮系統(tǒng)的并發(fā)性問題,有效地降低了系統(tǒng)的耦合性,增強了系統(tǒng)的模塊化。

3 具體實現(xiàn)

圖4給出基于主動對象模型車次追蹤模塊的主框架結構。其中主要包含4個部分:接口,隊列,線程以及處理。

圖4 車次追蹤主框架結構

3.1 接口部分

接口部分將所有輸入輸出進行封裝,其中CallIn供其它系統(tǒng)進行調用,將表示信息,計劃信息等輸入到車次追蹤系統(tǒng),CallIn的處理就是將這些調用以消息的形式存放到消息隊列中。

CallOut封裝了車次追蹤模塊的輸出部分,外界系統(tǒng)通過重載CallOut方法,從而實現(xiàn)對車次號和報點等信息的獲取。

3.2 隊列部分

隊列部分完成主動對象模型中的郵箱功能。所有外界的信息要傳遞到車次追蹤系統(tǒng),均需要以消息形式壓入隊列。同時,封裝線程部分對隊列進行不間斷監(jiān)視,一旦發(fā)現(xiàn)隊列中有數(shù)據(jù),將以先進現(xiàn)出的方式從中取出。

由于隊列部分同時要被外部線程和模塊內部線程訪問,因此,在隊列訪問時設置同步機制。

3.3 線程部分

系統(tǒng)通過將操作系統(tǒng)提供的線程進行封裝,從而形成只在車次追蹤模塊內部運行的線程,當對象生成時,生成并啟動線程,當對象消亡時,終止并結束線程。

系統(tǒng)線程在對象生存期不間斷地運轉,給車次追蹤的業(yè)務邏輯處理對象提供運行環(huán)境,同時從消息隊列中獲取消息,并將這些消息分發(fā)給實現(xiàn)部分進行具體處理。

3.4 處理部分

處理部分是車次追蹤算法的核心,包含大量站場相關的數(shù)據(jù)結構和處理類。這些處理類由封裝線程進行調用,對接收到的表示信息、無線車次號信息以及計劃信息等進行綜合分析,運算得出列車車次號位置信息以及報點等信息,將這些信息通過CallBack函數(shù)回調輸出。

4 結束語

本文引入主動對象模型,將車次追蹤的具體實現(xiàn)與并發(fā)處理分開,允許在進行算法設計時不用考慮系統(tǒng)的并行性,有效地降低了系統(tǒng)設計的復雜度。在滿足系統(tǒng)實時性特征的情況下,保證了系統(tǒng)的獨立性和模塊化。

[1] 朱冰,梅宏,楊芙清. 基于事件驅動的主動對象模型[J] . 軟件學報,1996(3).

[2] F.Buschmann, K.Henney, D.C.Schmidt. Patten-Oriented Software Architecture, Volume 4: A Pattern Language for Distributed Computing[M] . John Wiley & Sons, 2007: 365-367.

猜你喜歡
模塊化信息模型
一半模型
模塊化自主水下機器人開發(fā)與應用
重要模型『一線三等角』
重尾非線性自回歸模型自加權M-估計的漸近分布
模塊化住宅
ACP100模塊化小型堆研發(fā)進展
中國核電(2017年2期)2017-08-11 08:00:56
模塊化VS大型工廠
訂閱信息
中華手工(2017年2期)2017-06-06 23:00:31
3D打印中的模型分割與打包
展會信息
中外會展(2014年4期)2014-11-27 07:46:46
主站蜘蛛池模板: 毛片免费网址| 欧美激情视频一区| 欧美成人精品欧美一级乱黄| 久久不卡国产精品无码| 激情综合网址| 国产成人免费视频精品一区二区 | 国产麻豆aⅴ精品无码| 永久免费无码成人网站| 国产毛片片精品天天看视频| 波多野结衣无码视频在线观看| www.国产福利| 久久国产成人精品国产成人亚洲 | 毛片一级在线| 国产18在线| 亚洲中文字幕久久精品无码一区| 亚洲欧美日韩精品专区| 国产丝袜啪啪| 91视频国产高清| 国产不卡一级毛片视频| 国产你懂得| 久久网欧美| 国产精品永久久久久| 毛片网站在线看| 国产SUV精品一区二区6| 午夜免费小视频| 性视频一区| 日韩精品毛片| 国产男女XX00免费观看| 久久综合色88| 亚洲免费毛片| 91精品国产自产91精品资源| 国产亚洲欧美在线人成aaaa| 国产成人综合欧美精品久久| 91国内外精品自在线播放| 九色国产在线| 国产97视频在线观看| 免费一级成人毛片| 在线观看无码a∨| 97se亚洲综合在线| 国产美女人喷水在线观看| 国产成人免费高清AⅤ| 91久久精品国产| 777午夜精品电影免费看| 丰满人妻中出白浆| 成人午夜免费观看| 亚洲Aⅴ无码专区在线观看q| 激情六月丁香婷婷四房播| 老司机午夜精品网站在线观看| 色悠久久久久久久综合网伊人| 免费一级α片在线观看| 国产成人亚洲欧美激情| 久久性视频| 国产成人精品男人的天堂下载 | 亚洲精品桃花岛av在线| 高清欧美性猛交XXXX黑人猛交| 九九免费观看全部免费视频| 亚洲国产清纯| 在线免费a视频| 久久精品这里只有国产中文精品| 国产aⅴ无码专区亚洲av综合网| 中国特黄美女一级视频| 成人免费网站在线观看| 日本中文字幕久久网站| 国产特一级毛片| 日韩精品毛片人妻AV不卡| 亚洲欧美一区在线| 日本尹人综合香蕉在线观看| 免费aa毛片| 91麻豆国产视频| 日韩国产黄色网站| 精品国产欧美精品v| 国产精品太粉嫩高中在线观看| 538精品在线观看| 亚洲国产成人麻豆精品| 欧美69视频在线| 自拍欧美亚洲| 中文无码精品A∨在线观看不卡| 国产99视频在线| 国产一区二区三区在线观看免费| 欧美日本在线观看| 色九九视频| 国产在线观看高清不卡|