c-名称“ weak_ptr :: lock()”的原因是什么?

我们的许多开发人员都不了解从weak_ptr创建shared_ptr与锁定事物有什么关系.通过它们,术语“锁定”首先与互斥锁相关联.

例如,它可能被称为使用,保护或租赁或促销……但是,并非如此,学习标准是我们的责任.

但是对他们来说,这是一个非常糟糕的问题,以至于另一个复制了该惯用语的类必须重命名,从而导致大量代码行跟随该重命名.现在,我们仅凭直觉就牺牲了与标准的一致性.

有谁知道如何选择名称lock()?

最佳答案
它将共享对象锁定在内存中,并防止将其删除.

它与锁定互斥锁或类似内容无关.

转载注明原文:c-名称“ weak_ptr :: lock()”的原因是什么? - 代码日志