2012-01-11 22 views
0

任何人都可以告訴我適當的方式來設計這個?如何與服務和客戶端(同時運行)使用同一個串行設備(一個串行com接口)進行交互?

我有一個服務和一個客戶端(客戶端:配置串行設備和服務的不同設置)。他們都需要與串行設備進行交互。但兩者不能同時連接(因爲串口將被佔用)。客戶端將在服務運行時啓動。應用程序不知道何時進行連接(它們是定時器和線程),但它們不能同時進行。我正在考慮有一個DLL,服務和客戶端連接到,處理這種溝通。我如何用某種命令隊列設計這樣一個DLL?也許有更簡單的方法或更好的方法來做到這一點?會很好,如果有人能指出我在正確的方向...

在此先感謝!

回答

3

您的客戶端應該連接到您的服務並以這種方式執行其操作,以便該服務可以處理任何併發問題。看看WCF從這個連接開始的地方。

您不能使用共享DLL,因爲每個進程(客戶端和服務器)將單獨運行,並嘗試同時運行相同的代碼。他們從同一個程序集加載代碼的事實在您的情況下不會有幫助。

1

予處理,這是如下的方式:

服務: *連接到設備 *。公開WCF命名管道,其暴露的API

客戶: *消耗由提供的API服務。

相關問題