MarshalByRefObject クラス

MarshalByRefObject クラスがいったい何なのか、リファレンスを開いてみてもすぐには理解できないかもしれない。
とりあえず、MarshalByRefObject クラスの派生クラスじゃないとダメなんだと機械的に覚える程度で問題はない。
覚えておくほうがよいと思われる事柄の1つは、MarshalByRefObject の派生クラスに対するメソッド呼び出しは、実行時最適化によってインライン展開されないということである。
もし、Add() メソッドがインライン展開されたりしたら、stub の Invoke() が呼び出されなくなってしまうので、これは当然の処置だと言える。