.net 从服务器端列表中删除断开连接的MarshalByRefObject
在.Net远程处理中,如果创建远程对象的列表,那么如果远程端离开,并且您尝试访问其中一个列表项,则会出现异常 一切都很好,你可以试着抓住它,而不是世界末日 但是,如果尝试从.net 从服务器端列表中删除断开连接的MarshalByRefObject,.net,collections,lifecycle,.net-remoting,marshalbyrefobject,.net,Collections,Lifecycle,.net Remoting,Marshalbyrefobject,在.Net远程处理中,如果创建远程对象的列表,那么如果远程端离开,并且您尝试访问其中一个列表项,则会出现异常 一切都很好,你可以试着抓住它,而不是世界末日 但是,如果尝试从列表中删除断开连接的MarshallByRefObject,则会出现另一个异常,因为List.remove()使用Object.Equals(),无法清除列表 这是应该用某种本地包装器来解决的,还是有一种更干净的方法?我们实现的解决方案确实是在本地包装/组合MarshalByRefObject,以便正确地清理列表。代理设计模式
列表中删除断开连接的MarshallByRefObject
,则会出现另一个异常,因为List.remove()
使用Object.Equals()
,无法清除列表
这是应该用某种本地包装器来解决的,还是有一种更干净的方法?我们实现的解决方案确实是在本地包装/组合MarshalByRefObject,以便正确地清理列表。代理设计模式是最干净的方式 我们实现的解决方案实际上是在本地包装/组合MarshallByRefObject,以便正确清理列表。代理设计模式是最干净的方式