在 .Net 远程处理中,如果创建了一个远程对象列表,那么如果远程端离开并且您尝试访问其中一个列表项,您将获得异常。
一切都很好,你可以尝试抓住它,而不是世界末日。
但是,如果您尝试MarshalByRefObject
从 a中删除断开连接,则会出现List<MarshalByRefObject>
另一个异常,因为List.Remove()
使用Object.Equals()
并且无法清理列表。
是否应该使用对象的某种本地包装器来解决这个问题,MarshalByRefObject
还是有更清洁的方法?