Chr*_*oph 9 .net c# remoting dispose .net-remoting
我正Streams从远程服务返回(.NET Remoting).但Streams也是一次性用品,我们都知道这些是待处理的.
我Dispose完成消费之后,我可以在客户端打电话.但是,当我Stream从远程对象返回时,我想知道封面下究竟发生了什么.
特别:
byte[]并返回而不是一个Stream?Stream与返回不同的是byte[]什么?最后,还是.NET Remoting必须以某种方式序列化数据?Dispose客户端甚至是否有任何影响?客户端对象和服务器端对象之间是否存在神奇的连接?我认为一旦它在封面后反序列化,在呼叫Dispose()客户端或在那里是没有意义的?我在这里回答Mike Bild,因为我也希望稍微改进一下这个问题
好的,所以回流到服务器的流是(对我来说至少)意想不到的.
为了获取远程对象,必须执行以下操作:
public static class ServiceFactory <T>
{
public static T CreateProxy()
{
Type interfaceType = typeof(T);
string uri = ApplicationServer.ServerURL + interfaceType.FullName;
return (T)Activator.GetObject(interfaceType, uri);
}
}
Run Code Online (Sandbox Code Playgroud)
因此,您明确要在某个URI上使用特定的远程对象.当该远程对象上的方法返回一个继承自MarshallByRefObject的对象时,这意味着它自动与远程端的对象相关联?好吧,使用我自己构建的测试对象,这应该很容易重现.所以这也意味着我应该在客户端调用Dispose并将其代理回服务器端的对象?
小智 3
Stream 是 MarshalByRefObject。那是一种特殊的。这是一个代理。
| 归档时间: |
|
| 查看次数: |
502 次 |
| 最近记录: |