当将指针返回到数据时,C++是无用的关键部分

C++ Are Critical Sections Useless When returning Pointers to data

本文关键字:无用 键部 C++ 指针 返回 数据      更新时间:2023-10-16

我想我已经知道了这个问题的答案,但我目前正在重新编译一些遗留的Visual C++6.0代码,并且我正在放入一些CCcriticalSection,但后来我开始思考,如果我的所有函数都返回一个指向某些数据的指针,我认为关键部分可能毫无用处,因为我不认为我真的保护了它指向的数据,我不认为它真的阻止了任何人向它写入。(假设我在setter周围有相同的锁)。

你觉得怎么样?

是的,如果返回指向数据的指针,那么将指针延迟到关键部分之外将是一个问题。对关键共享数据的访问必须在锁内。

我不知道你所说的CCritialSections是什么意思,但总的来说,返回指针或引用的函数不是的好候选者用于互斥锁。你需要在更高的层次上管理事情。