0

次の問題を解決できません。分散オブジェクトを使用して互いに通信する 2 つのアプリケーションがあります。アプリケーションAがアプリケーションBからメソッドを呼び出すと し- (void)updateState:(State *)stateます.Bアプリでメソッドが呼び出されると、オブジェクトではなく送信されたオブジェクトを表します。金曜日の Q&Aで、オブジェクトがプロトコルに準拠している場合、オブジェクトはプロキシではなく「送信」されるべきであることがわかりましたが、それでもプロキシを受け取ります。Apple Documentation でそれに関する情報が見つかりません。プロキシの代わりにオブジェクトを送信する方法と、分散オブジェクトシステムがオブジェクトをシリアル化して送信するタイミングとプロキシを送信するタイミングを決定する方法を誰かが知っているでしょうか?
@interface State : NSObject <NSCopying, NSCoding>...
updateState:NSDistantObjectStateNSCoding

4

1 に答える 1

0

見つけた!- (id)replacementObjectForPortCoder:(NSPortCoder *)coderまた、通過させたいオブジェクトに実装する必要があります。この方法の詳細については、Apple のドキュメントを参照してください。

MysticalisBycopyisByrefof NSPortCoder。Apple はドキュメントを参照していますが、最後にはメソッド パラメータ キーワードによって決定される情報はありませbycopybyref。このキーワードの詳細については、こちらをご覧ください

于 2014-10-09T12:08:23.530 に答える