0
是否有管理由2個或更多其他對象共享的對象的最佳做法。即使在不同的線程上運行?C++管理共享對象的句柄問題
例如,A被創建並且它的指針被給予B和C. B> GiveObj(A); C)> GiveObj(A);
現在我該如何刪除objA?
到目前爲止,我所關心的是監視器有多少參考點,當這個計數器爲0時,它會刪除它(例如當A通過時,接收器調用A-> Aquire(),當它完成時它調用A-> release();
或者我可以告訴B-> RemoveObj(A);和C-> RemoveObj(A);問題是如果B或C在不同的線程上運行,我不能刪除A,直到他們完成A,並且他們看到了RemoveObj調用(這需要一堆雜亂的標誌)。
會有一個很好的方式來做到這一點,可能與信號/插槽?
謝謝