溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶(hù)服務(wù)條款》

EA畫(huà)UML活動(dòng)圖中如何實(shí)現(xiàn)分叉和結(jié)合

發(fā)布時(shí)間:2021-12-20 14:17:12 來(lái)源:億速云 閱讀:410 作者:小新 欄目:大數(shù)據(jù)

這篇文章給大家分享的是有關(guān)EA畫(huà)UML活動(dòng)圖中如何實(shí)現(xiàn)分叉和結(jié)合的內(nèi)容。小編覺(jué)得挺實(shí)用的,因此分享給大家做個(gè)參考,一起跟隨小編過(guò)來(lái)看看吧。

分支是一個(gè)輸入令牌根據(jù)條件判斷的結(jié)果轉(zhuǎn)移到在幾條可能的路徑中的一條,而合并是幾條可能的控制路徑的匯合點(diǎn),任何一條路徑上出現(xiàn)令牌,則該令牌會(huì)轉(zhuǎn)移到輸出路徑上。分支和合并都不會(huì)改變并發(fā)執(zhí)行線程的數(shù)量。簡(jiǎn)單地講,分支和合并提供的是選擇控制路徑的手段。

也存在另外一種情況,一個(gè)控制流會(huì)轉(zhuǎn)換成兩個(gè)或多個(gè)并發(fā)的控制流,這些并發(fā)的控制流在完成各自的任務(wù)后,又會(huì)結(jié)合成一個(gè)控制流。這就是UML中的分叉和結(jié)合。

語(yǔ)義

分叉(folk)節(jié)點(diǎn)是一個(gè)有一個(gè)輸入,多個(gè)輸出的節(jié)點(diǎn),一個(gè)輸入令牌被復(fù)制到每一個(gè)輸出上。分叉會(huì)增加并發(fā)線程的數(shù)量。


結(jié)合(join)是活動(dòng)圖中的一個(gè)點(diǎn),在這里有兩個(gè)或多個(gè)并發(fā)線程合并為一個(gè)線程。當(dāng)所有輸入的令牌全都到達(dá)之后,這些令牌結(jié)合成一個(gè)令牌并轉(zhuǎn)移到輸出路徑上。

表示法

分叉表示為有一個(gè)轉(zhuǎn)入箭頭,兩個(gè)或多個(gè)轉(zhuǎn)出箭頭的粗線條;結(jié)合表示為多個(gè)轉(zhuǎn)入箭頭和一個(gè)轉(zhuǎn)出箭頭的粗線條。


畫(huà)法

拖動(dòng)工具欄中下列圖標(biāo)到活動(dòng)圖后,根據(jù)需要連接控制流即可。兩個(gè)圖標(biāo)的區(qū)別只在于線條的方向不同。

EA畫(huà)UML活動(dòng)圖中如何實(shí)現(xiàn)分叉和結(jié)合

EA畫(huà)UML活動(dòng)圖中如何實(shí)現(xiàn)分叉和結(jié)合

示例

下面以復(fù)印機(jī)的動(dòng)作為例說(shuō)明分叉和結(jié)合的使用方法。

EA畫(huà)UML活動(dòng)圖中如何實(shí)現(xiàn)分叉和結(jié)合

處理相對(duì)比較復(fù)雜,請(qǐng)耐心看完。

  1. 進(jìn)入復(fù)印功能后首先執(zhí)行準(zhǔn)備處理PrepareCopy

  2. PrepareCopy執(zhí)行以后分別啟動(dòng)UI和復(fù)印處理兩個(gè)并發(fā)流程

  3. 復(fù)印流程等待UI流程發(fā)送的開(kāi)始命令。

  4. UI流程表示開(kāi)始畫(huà)面

  5. UI流程等待用戶(hù)按下開(kāi)始按鈕

  6. 用戶(hù)按下開(kāi)始按鈕

  7. UI流程向復(fù)印流程發(fā)送開(kāi)始命令

  8. UI流程等待復(fù)印流程發(fā)出的通知

  9. 復(fù)印流程收到開(kāi)始命令執(zhí)行開(kāi)始復(fù)印處理StartCopy

  10. 開(kāi)始復(fù)印處理結(jié)束后向UI流程發(fā)送復(fù)印已經(jīng)開(kāi)始通知

  11. UI流程表示復(fù)印執(zhí)行中畫(huà)面

  12. 復(fù)印流程啟動(dòng)掃描流程和打印流程

  13. 掃描和打印執(zhí)行過(guò)程中向UI流程發(fā)出掃描和更新通知

  14. UI流程更新復(fù)印執(zhí)行中畫(huà)面

  15. 掃描和打印流程都結(jié)束后結(jié)合為復(fù)印流程

  16. 復(fù)印流程執(zhí)行復(fù)印結(jié)束動(dòng)作FinishCopy

  17. 復(fù)印流程向UI流程發(fā)送復(fù)印結(jié)束通知。

  18. UI流程收到復(fù)印結(jié)束通知以后顯示復(fù)印完了畫(huà)面

  19. UI流程和復(fù)印流程結(jié)合

  20. 全部處理結(jié)束

感謝各位的閱讀!關(guān)于“EA畫(huà)UML活動(dòng)圖中如何實(shí)現(xiàn)分叉和結(jié)合”這篇文章就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,讓大家可以學(xué)到更多知識(shí),如果覺(jué)得文章不錯(cuò),可以把它分享出去讓更多的人看到吧!

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI