這似乎是一個令人難以置信的簡單的問題,但在我所有的研究,我一直沒能找到一個很好的例子......C++線程安全的對象
我試圖建立一個自定義類使用getter和setter函數可訪問私有變量。這個類將在全局範圍(extern)中實例化一次,並將在我的應用程序中充當數據緩存。它將被許多線程同時使用,99%用於讀取,並且速度非常重要。有什麼辦法允許併發讀取並鎖定寫入? (我假設沒有)
我是否簡單地包含一個作用域互斥體作爲getter和setter的第一行?或者如何設計這個看似簡單的對象的最佳方式?任何例子或鏈接將不勝感激(我很難包圍我的頭)。
我確實有Boost編譯進來,所以它是可用的。
我真的很感激它!
這不過是一件簡單的事。每一個細節都很重要。不幸的是,你的描述只有那些珍貴的東西。 –
您可以使用['std :: mutex'](http://en.cppreference.com/w/cpp/thread/mutex)或類似的同步機制來保護訪問類成員,但也許可以使用'const' getter方法,異步鎖變量需要聲明爲「可變」。 –