管理対象オブジェクトに関する情報を保持するためにSplObjectStorageを使用しています。SplObjectStorage
オブジェクトが破壊されたときに、外部参照がなくなったオブジェクトを自動的にクリーンアップしたいと考えています。
現在、これには 2 つのオプションしかありません。
- 管理対象オブジェクトのデストラクタにストレージへの参照を削除するよう通知させる。これらのオブジェクトはマネージャーを認識する必要がないため、これは受け入れられません。
- debug_zval_dump()を解析して参照カウントを取得します。同様に受け入れられません。私見は、深刻なアプリケーションにはあまりにも「ハック」です。
他のアイデアはありますか?