まつもと ゆきひろです

In message "[ruby-list:13865] cross-reference duplication"
    on 99/04/19, Ryunosuke Ohshima <ryu / jaist.ac.jp> writes:

|現在、相互に参照をしているインスタンス群の状態の複製を作るために、
|Marshalモジュールを使用しています。(Marshal.dumpの文字列で状態を保持
|し、Marshal.loadで再現。dupの使用では相互参照状態の複製が難しそうだっ
|たためです。)ところがTCPsocketを持つインスタンスが含まれると、
|Marshal.dumpができないために、この方法ではTCPによる通信を含めること
|ができないようです。

できません.OSが許してくれないから.

|複製されたインスタンスのTCPsocket部分は不要なので、必要部分だけを参
|照先まで複製させれば良いのですが、相互参照関係をうまく複製するにはど
|のようにすれば良いのでしょうか?

一般的には

  TCPsocketへの参照をdump前に外す
  複製するインスタンスにTCPsocketを含まないように再設計

などがお勧めですが,難しいでしょうか?

                                まつもと ゆきひろ /:|)