工作流程正在作爲wcf服務發佈,並且我需要保證工作流程順序執行。有沒有一種方法 - 在代碼或配置 - 以保證運行時不同時啓動兩個工作流程?Windows工作流程 - 有沒有辦法保證只有一個工作流程運行?
1
A
回答
0
無法將運行時配置爲限制正在進行的工作流的數量。
儘管它的工作流量本身負責控制流程的責任。因此,工作流本身應該有方法來確定其自身的另一個實例是否正在進行中。
我會考慮創建一個活動,它會事務性地嘗試更新數據庫記錄,以使該工作流的實例正在進行中。如果它發現另一個正在進行中,它可以採取適當的行動。它可能會失敗,或者它可以使用EventActivity排隊,以便在以前的工作流程完成時發出警報。
0
您可能需要在工作流啓動時檢查另一個正在運行的實例。 如果找到,取消它。
+0
我想要做的是排隊他們。如果兩個工作流同時啓動,這會產生併發問題,因爲兩者都可能發現它們是唯一正在運行的問題。這看起來確實需要在工作流運行時級別進行處理,但我不知道如何在wcf服務中託管時完成該任務。 – Brian 2009-11-13 17:10:13
0
我不同意這需要在WorkflowRuntime級別進行處理。我喜歡自定義Activity的想法,類似於具有DB後端的CompositeActivity的MutexActivity。第一次執行會記錄到它擁有互斥量的數據庫。隨後的調用將排隊他們的工作流ID,然後閒置。當MutexActivity完成時,它將釋放互斥鎖,加載隊列中的下一個工作流並調用包含的子活動。
相關問題
- 1. 有沒有辦法檢查Windows工作流中的順序工作流程?
- 2. 從另一個工作流程中運行工作流程
- 3. 有沒有辦法讓F#中的異步工作流程自動流水?
- 4. Windows Workflow Foundation 4只運行一個工作流程
- 5. Windows工作流程運行概念
- 6. Sharepoint工作流程沒有更新
- 7. 流程工作在變換沒有
- 8. 有關流工作流程在Amazon EMR
- 9. 手動運行時工作流程具有SPContext.Current,但運行「On Change」時沒有?
- 10. Windows工作流程3是否有工作日的概念?
- 11. 有沒有辦法保證螞蟻依賴只運行一次?
- 12. 啓動多個工作流程的單一工作流程
- 13. Windows工作流程:「singleton」式工作流程?
- 14. CRM工作流運行另一個工作流
- 15. 有沒有辦法用遠程工作目錄啓動進程?
- 16. 每個小時運行,但只有在辦公時間一個Informatica的工作流程?
- 17. 有沒有辦法阻止工作流出現在工具箱中?
- 18. 使用現有內容的新工作流程和更名工作流程
- 19. 現有WCF中的工作流程
- 20. 含有mercurial subrepositories的工作流程
- 21. 一般工作流程 - 問題/ ez組件工作流程
- 22. Windows工作流動態,用戶創建的工作流程
- 23. Windows工作流 - TerminateActivity導致工作流程出錯?
- 24. 使用Windows Workflow Foundation的多個工作流程實例工作流程
- 25. 具有多個流的RTC工作流程?
- 26. Ayehu eyeshare:從剛剛執行程序運行時的工作流程,沒有工作室
- 27. MediaPlayer,只有視頻m3u8 HTML流工作
- 28. Windows工作流:開始從工作流
- 29. 有沒有辦法一個接一個檢查程序的流程?
- 30. 使用Python運行Informatica工作流程
謝謝。這應該完美。 – Brian 2009-11-13 17:20:54