0

我无法解决下一个问题:我有 2 个使用分布式对象相互通信的应用程序。假设应用程序 A- (void)updateState:(State *)state从应用程序 B 调用方法。
@interface State : NSObject <NSCopying, NSCoding>...
updateState:在 B 应用程序中调用方法时,我NSDistantObject代表发送的对象而不是State对象。在周五的问答中,我发现如果对象符合NSCoding协议,则应该“发送”对象而不是代理,但是,我仍然收到代理。我在 Apple 文档中找不到任何有关它的信息。也许有人确实知道我如何发送对象而不是代理以及分布式对象系统如何决定何时序列化和发送对象以及何时代理?

4

1 回答 1

0

我找到了!此外,您应该- (id)replacementObjectForPortCoder:(NSPortCoder *)coder在要通过的对象中实现。有关此方法的更多信息,您可以在Apple 文档中阅读。

Mystical isBycopyand isByrefof NSPortCoder,Apple 引用文档,但最后没有信息,由bycopybyref方法参数关键字确定。您可以在此处阅读有关此关键字的更多信息。

于 2014-10-09T12:08:23.530 回答