協同工做流提供流程設計器用於流程建模,提供給工做流引擎解釋執行,支持各類複雜流程,大體羅列以下:
順序流程:當前一任務完成以前,本任務不能執行(調度)。服務器
一、並行分支流程:當前一任務完成以後,產生多個併發任務。併發
二、同步聚合流程:當兩個並行任務都完成後下一任務才能開始執行。異步
三、排它選擇流程:在流程中的某個活動中,依據一個結果或者流程控制數據,從多個分支路徑中選定一個路徑。線程
四、簡單聚合流程:存在多個流程分支匯聚到一個活動,任一個流程到達活動入口時,該活動被觸發。該聚合存在異步觸發現象,具體活動可能被觸發屢次。設計
五、多路選擇流程:流程中存在多個分支,由用戶選擇執行。同步
六、多路聚合流程:多路合併是指在流程中的某點,兩條或更多分支無同步再收斂。若是存在多於一個分支被激活,可能同時被激活的任務執行後,合併時,對於每一個流入的激活分支均響應一次。工作流
七、鑑別器流程:多分子匯聚時,只有一個分支能夠激活當前任務,任務激活後,其餘分支被忽略。配置
八、M中選N流程:M條並行路徑聚合到一個活動,只要其中的N條路徑完成,則激活後續任務,全部其餘剩餘路徑被忽略。循環
九、同步匯聚流程:流程中某點多條路徑聚合成一個線程,若是多於一條路徑觸發,則活動線程按照同步執行處理;若是僅有一條路徑觸發,則按照異步執行處理。並行
十、任意循環流程:流程中的一個任務或者多個任務被重複執行。
十一、多實例不一樣步流程(輔助流程):當前任務觸發產生了多個流程實例,這些流程實例將獨立執行,原流程繼續執行,無需等待這些流程實例。
十二、任務搶佔流程:後續分支只容許被激活,一旦某一個執行,其餘分支或者任務將被取消。
1三、交叉並行流程:一組任務以任意順序執行,其中的每一個人物被執行,其執行順序在運行時決定,沒有兩個任務在同一時間執行。例如:A到(B,C,D)到E。其執行的實例順序多是A,B,C,D,E;也多是A,D,C,B,E;或者是A,C,B,D,E。
1四、本地子流程(流程嵌套):支持配置實現主流程轉移到子流程,並啓動子流程。
1五、遠程子流程:支持配置實現本地主流程轉移到異地工做流引擎服務器上的子流程,並啓動子流程。
1六、同步(異步)子流程:主流程轉移到子流程時,支持子流程的同步或者異步方式啓動。同步啓動是主流程必需等待子流程結束後再繼續進行;異步起動是主流程繼續執行,無需等待子流程結束。
本文來源:協同·時光