だから私はこのようなラッパークラスを持っています:
class VeryWrapper
{
Wrapper wrp = new Wrapper();
int val = 0;
}
は次Wrapper
のように定義されます。
class Wrapper
{
int val = 0;
}
ここで、ストリームにシリアル化する場合は、 と の両方val
を変更wrp.val
し、新しい状態でシリアル化します。writeObject
を使用すると、ストリームの反対側で古い状態が受信されることを理解しています。したがってwriteUnshared
、この場合は使用する必要があります。しかし、問題は、このメソッドを使用すると、そのフィールドではなくオブジェクト自体のみが共有されないwrp
ため、の値はval
更新されますが、の値wrp.val
は古い値のままです。この問題をどのように回避しますか?