色々と他のこともしつつ考えた結果、検索を入れるためのモデルの変更の方向性を決めました。
主にオブジェクトの寿命管理と、排他制御まわりをどうするか考えていたのですが、パフォーマンスとメモリ使用量とメンテナンス性を色々と検討した結果、一応納得のいく答えが出たような気がします。
しかし、C++でQMAILを作っているとこの辺をちゃんと考える気がするのですが、Javaでなんちゃらを作っているといまいち気が乗らないのはなんなんでしょう。