AWDwRの勉強 #8

第15章まで読んだ。
前回疑問に思った件、transactionが失敗したときにオブジェクトの中身を元の値に戻しているのは、Marshal.dump/restoreを使用して実現していた。dump()のlimit引数を指定してないので、完全なdeep copyになっている。従って、値は復元されるが、参照しているオブジェクトは別のものに変わることになる。