我需要替代Dispatcher
(.net 3.0)用於Windows服務(在.net 2.0中完成)。你能給我一些想法如何實現這樣的事情或指向我的一些鏈接?在.net 2.0上下文中使用Dispatcher類的替代方法
我知道調度員有一個SynchronizationContext
落後,但我不知道如何將SynchronizationContext
用於服務。
如果你認爲我應該堅持Dispatcher
(.NET 3.0)...我怎麼能操縱它(OnServiceStop
,)
編輯: 更多細節(見.. here)
想法是,我想主持我的Windows服務的一些擴展/插件,這將通過方法ExecuteCommand(type, params)
之間相互溝通。
如果從插件內部執行該方法,該方法還會向服務引發一個事件,以便接收結果。每個插件都可以擁有自己的線程,因此它可以調用此方法ExecuteCommand
,因此我想收集所有調用並將其同步到一個線程(主服務線程)中,以便適當地返回結果。
這就是調度員進場的原因。但是,我希望在.net 2.0中有一些東西,或者您認爲Dispatcher在我的情況下很好嗎?
謝謝。
細節從這裏開始,但它是一個不同的問題:http://stackoverflow.com/questions/3447189/c-multiple-sources-different-threads-one-event-handler ...我會嘗試編輯我的問題 – Learner 2010-08-11 07:29:22
嗨,喬恩,非常感謝!你有一篇很好的文章。因爲我的代碼已經達到了更高的複雜程度(用於插件通信)......我希望在表面上使用更輕量級的東西。這就是爲什麼我在尋找Dispatcher之類的東西。你知道嗎,這是爲Windows服務工作嗎?你知道我在服務啓動/停止期間如何操縱它嗎? – Learner 2010-08-11 08:00:35
如何在.net 2.0(對於Windows服務)中從一個線程編碼到另一個線程? – Learner 2010-08-11 08:02:42