我一直在.net工作幾年,這是我第一次進入IPC。我知道做IPC的各種可能性(命名管道,遠程處理,剪貼板管理,Win32API消息傳遞),但我不知道什麼「適合我」。我打算使用以下設置:C#IPC建議和比較
站點對象:這是需要ipc的原因。它將是代表遠程機器上文件集合的單個對象(可能是本地的,可能是真正的遠程)。
服務器:server.exe進程將監視上面提到的文件系統,並更新站點對象此過程將隨後保持連接到服務器的所有客戶端更新,並定期發佈新的Site對象副本(從客戶端強制更新或服務器自動更新)。
客戶:需要定期更新「網站」。它也希望能夠修改站點對象(或至少發送消息到服務器,要求它做出特定的修改)
TL; DR版本:服務器上的Singleton實例(它將主動修改單例) ,有多個客戶端監控單身人士,客戶可以更改(或請求服務器更改)單身人士
備註:所有的.net,沒有混合的平臺我看了一下Remoting,但它似乎超出了(或者我完全不理解)
我不確定這些更適合社區維基是否適合社區維基,請隨時加以改變。
感謝
這看起來像一個大學作業:) – sukru 2010-07-28 20:33:52
遠程處理支持事件,但我不會使用它,除了在局域網上。你可以看看WCF和雙重綁定來回發送消息。也讀取SO - http://stackoverflow.com/questions/56121/ipc-mechanisms-in-c-usage-and-best-practices – 2010-07-28 20:37:26
哈,我希望它在哪裏大學的任務。我們正在取代一個15年前的系統,做了同樣的事情。我們的解決方案是基於Shmem推出我們自己的IPC。我們希望做類似的事情,但希望能夠用Object來完成。 – greggorob64 2010-07-28 21:52:06