2009-08-27 47 views
4

想知道,是否有任何多線程框架呢?WinForm應用程序的C#多線程框架

目前我正在開發一個使用Microsoft企業庫框架的WinForm應用程序。在這個應用程序中,我想在運行進程時添加線程功能,因此我可以將需要的進程卸載到單獨的線程中。而且,我需要能夠監視我創建的所有線程及其進度狀態。

那麼......是否有任何框架/模式/最佳實踐來管理線程?

謝謝一堆。

回答

9

考慮Retlang。這是一個很好的線程抽象和與WinForms集成的方式,您可以輕鬆觸發將在表單線程中調用的操作。它還實現了各種發佈/訂閱機制,並使用整個庫中的接口進行簡單的模擬測試和可擴展性。

肯定會擱置一個小時看例子和單元測試,並用它構建一些小測試應用程序。這是一個快樂的使用,並會節省你數週的工作。

Retlang提供併發 的解決方案,是從 基本鎖定方案,並行FX, 或.NET線程池有很大不同。使用Retlang, 應用程序組件使用低級別鎖定和阻止 api異步交換 消息而不是 。郵件按順序遞送 以防止線程競爭 或對象同步。它在設計上與基於事件的 Scala中的演員類似,都是 。

+0

我覺得這個可能的作品,我會考慮它。謝謝安東尼。 – dkartopr