>>136
weak_ptr使ってみました。これは良いですね。
セットされていたshared_ptrが消失すると以降のlock()が無効になる。
これで私の希望は叶ったように思います。
ただ・・これって内部ではどのような処理が行われているのでしょうか?
ソースを読んでみようかと思いましたが・・私にはちょっと難しかったです。
どなたか、簡単に解説していただけませんでしょうか?

intrusive_ptrについては、よく分かりませんでした。

>>137
Bがインスタンスのポインタのポインタを持つとして、
その「インスタンスのポインタ」にあたるデータは
Aが持つのでしょうか?それとも違う者が持つ?または誰も所有しないのでしょうか?
ちょっと具体的なイメージが沸きませんでした。
宜しければサンプルコードみたいなものを書いて頂けるとありがたいです。