【问题标题】:Share object between two processes in C#在 C# 中的两个进程之间共享对象
【发布时间】:2012-08-08 05:07:51
【问题描述】:

我正在寻找一种在两个进程之间共享对象的方法。 第一个进程应该创建对象,第二个进程应该只复制它而不对原始对象进行任何更改。

有人知道怎么做吗?

【问题讨论】:

  • stackoverflow.com/questions/2004790/… - 如何在 .NET 中实现共享内存。
  • @choppy 不需要共享对象因为当您提供只读访问权限时共享对象没有意义..使用PipeStream
  • 你总是可以序列化对象..取决于它的构造方式。

标签: c# memory-mapped-files memory-mapping


【解决方案1】:

您不需要共享内存:第一个进程可以公开 WCF(或 .NET Remoting)服务,而第二个进程将能够调用它。确保您的对象是可序列化的。

【讨论】:

  • 这就引出了第二个问题,使用 pipeStream 和 WCF 有什么区别?使用面糊选择哪个?
  • WCF 是一种 API,它允许同一台计算机上的两个进程(实际上是两个应用程序域)进行通信。使用相同的代码,只需更改配置,就可以更改通信协议:命名管道、TCP、HTTP MSMQ,...您应该首先阅读 WCF 教程。
【解决方案2】:

在.net2.0或更低的版本你不能使用wcf,但是你可以使用一些像wcf这样的库,例如ICE Framework, 你可以下载并阅读它,在下面的链接 ICe Framewrok

【讨论】:

    猜你喜欢
    • 2012-07-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-05-26
    • 1970-01-01
    • 1970-01-01
    • 2010-11-15
    • 1970-01-01
    相关资源
    最近更新 更多