gpt4 book ai didi

c++ - 等待删除 shared_ptr 的最佳方法?

转载 作者:塔克拉玛干 更新时间:2023-11-03 07:23:02 29 4
gpt4 key购买 nike

我有一个场景,其中创建为 shared_ptr 的对象是资源,某些步骤必须等到这些资源完全释放。

shared_ptr 具有成员函数 use_count(),但依赖它意味着循环检查效率不高。

shared_ptr 包装在另一个类中是否是个好主意,该类使用自定义删除器构造它,设置一个事件标志,该包装器的用户可以等待(使用 condition_variable )?

或者,创建我自己的 shared_ptr 是否有意义,它只是添加这样的 wait_for_released() 功能?

最佳答案

您可能会遇到被拥有资源的对象锁定的互斥锁——它们可以从它们的析构函数中释放互斥锁。服务员等待互斥锁而不是任何与共享指针直接相关的东西。

关于c++ - 等待删除 shared_ptr 的最佳方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23152756/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com