这似乎是一个令人难以置信的简单的问题,但在我所有的研究,我一直没能找到一个很好的例子......C++线程安全的对象
我试图建立一个自定义类使用getter和setter函数可访问私有变量。这个类将在全局范围(extern)中实例化一次,并将在我的应用程序中充当数据缓存。它将被许多线程同时使用,99%用于读取,并且速度非常重要。有什么办法允许并发读取并锁定写入? (我假设没有)
我是否简单地包含一个作用域互斥体作为getter和setter的第一行?或者如何设计这个看似简单的对象的最佳方式?任何例子或链接将不胜感激(我很难包围我的头)。
我确实有Boost编译进来,所以它是可用的。
我真的很感激它!
这不过是一件简单的事。每一个细节都很重要。不幸的是,你的描述只有那些珍贵的东西。 –
您可以使用['std :: mutex'](http://en.cppreference.com/w/cpp/thread/mutex)或类似的同步机制来保护访问类成员,但也许可以使用'const' getter方法,异步锁变量需要声明为“可变”。 –