>>116
> オブジェクトに不変なハンドルつけて間接参照にしたり、
> ポインタをラップしてリストアップしたり。

だから、そんなプログラムが速いわけないだろ。

ハンドルに対する実アドレスのテーブルをcompactionのときに
更新しないといけないぞ。

他のタスクオブジェクトを参照するごとに
TaskA taskA= dynamic_cast<TaskA*>HandleToPtr(taskA_handle);
みたいに書く必要が出てくる。

プログラムが汚い上にハンドルだから型が不明になってしまう。

これひどくないか?

> コンパクションを行うということはそういうことだろうに。

それは、全然違うと思うぞ…。
少なくとも俺のシステムにあんたの実装のような欠陥はないな。