IVGCVSW-3432 Fix a multithread store conflict
* Unit test was using the same CaptureData object across 50 threads
Change-Id: I0249b5a8e0bb05e3d3efdd855f5b34b1d5ef3dc9
Signed-off-by: Jim Flynn <jim.flynn@arm.com>
diff --git a/src/profiling/Holder.hpp b/src/profiling/Holder.hpp
index c22c72a..d8d1f5b 100644
--- a/src/profiling/Holder.hpp
+++ b/src/profiling/Holder.hpp
@@ -26,7 +26,7 @@
CaptureData& operator= (const CaptureData& captureData);
void SetCapturePeriod(uint32_t capturePeriod);
- void SetCounterIds(std::vector<uint16_t>& counterIds);
+ void SetCounterIds(const std::vector<uint16_t>& counterIds);
uint32_t GetCapturePeriod() const;
std::vector<uint16_t> GetCounterIds() const;
@@ -41,7 +41,7 @@
Holder()
: m_CaptureData() {};
CaptureData GetCaptureData() const;
- void SetCaptureData(uint32_t capturePeriod, std::vector<uint16_t>& counterIds);
+ void SetCaptureData(uint32_t capturePeriod, const std::vector<uint16_t>& counterIds);
private:
mutable std::mutex m_CaptureThreadMutex;