2014-10-08 97 views
0

我無法解決下一個問題:我有2個應用程序使用分佈式對象相互交談。假設應用程序將呼叫從應用B. - (void)updateState:(State *)state方法
@interface State : NSObject <NSCopying, NSCoding>...
當被調用時在乙應用updateState:方法我有NSDistantObject表示代替State對象sended對象。在Friday Q&A我發現如果對象符合NSCoding協議對象應該'發送'而不是代理,但是,我仍然收到代理。 Apple文檔中找不到關於它的任何信息。也許有人確實知道如何發送對象而不是代理,以及Distributed Objects系統如何決定何時序列化和發送對象以及何時使用代理?通過分佈式對象代替代理髮送對象

回答

0

我發現它!此外,您應該在要通過的對象中實現- (id)replacementObjectForPortCoder:(NSPortCoder *)coder。有關此方法的更多信息,請參閱Apple documentation

神祕isBycopyNSPortCoderisByref,蘋果公司向裁判documentation,但在最後的是沒有資料,通過bycopybyref方法參數關鍵字確定。更多關於這個關鍵字,你可以閱讀here