实现System.Runtime.Remoting.Channels.IChannel

时间:2010-01-09 12:30:55

标签: c# .net-remoting

我想在一台机器上安装一个内存通道 我可以实现System.Runtime.Remoting.Channels.IChannel吗? 我想制作像System.Runtime.Remoting.Channels.Memory.MemoryChannel这样的东西。
我该怎么办?
我可以在10天内完成吗?

1 个答案:

答案 0 :(得分:3)

你当然可以,但首先,远程通信被Windows Communication Foundation(WCF)取代,这是优越的。有一本不可或缺的书,涵盖了Ingo Rammer的旧学校远程处理,“Advanced .NET Remoting”,读了之后你将能够实现一个MemoryChannel。

但在.NET 2中,通过使用命名管道进行进程间通信的IpcChannel,使用TCP协议的TcpChannel和使用HTTP协议的HttpChannel。

唯一的第三方远程处理软件Genuine Channels(GC)有一个共享内存通道,类似于IpcChannel(基本上是同一个东西),我已成功使用GC。还有DotNetRemoting

由于缺乏支持及其发展方向,正版渠道目前处于一个不太明显的位置......尽管是微软实施远程处理的一个很好的替代方案。至于DotNetRemoting,我没有使用他们的产品,所以没有评论...

实现自定义通道的唯一方法是,需要进行大量的编码工作,因为必须实现属于Channel命名空间的接口,例如IChannelIChannelSink仅举几例,在您的情况下,在10天内完成......我怀疑......

对于初学者来说,你究竟想用内存频道做什么?

为什么在使用IpcChannel时重新发明轮子?如果你发现它有多容易,你可能会感到惊讶。或者为什么不学习WCF ......?

我开始自学WCF,因此我无法在这个阶段发表评论,因为我正在学习它。