From 5e9fb1794954a9853b8d9e933d522273aceed15a Mon Sep 17 00:00:00 2001 From: Zach Pomerantz Date: Tue, 7 Feb 2017 18:50:23 +0000 Subject: [PATCH] use tbb::atomic for cp --- assignment-client/src/audio/AudioMixerClientData.cpp | 3 --- assignment-client/src/audio/AudioMixerClientData.h | 7 ++----- 2 files changed, 2 insertions(+), 8 deletions(-) diff --git a/assignment-client/src/audio/AudioMixerClientData.cpp b/assignment-client/src/audio/AudioMixerClientData.cpp index ac5316db37..791ccb8b03 100644 --- a/assignment-client/src/audio/AudioMixerClientData.cpp +++ b/assignment-client/src/audio/AudioMixerClientData.cpp @@ -430,8 +430,6 @@ void AudioMixerClientData::cleanupCodec() { } AudioMixerClientData::IgnoreZone& AudioMixerClientData::IgnoreZoneMemo::get(unsigned int frame) { - assert(_frame.is_lock_free()); - // check for a memoized zone if (frame != _frame.load(std::memory_order_acquire)) { AvatarAudioStream* stream = _data.getAvatarAudioStream(); @@ -480,7 +478,6 @@ void AudioMixerClientData::IgnoreNodeCache::cache(bool shouldIgnore) { } bool AudioMixerClientData::IgnoreNodeCache::isCached() { - assert(_isCached.is_lock_free()); return _isCached; } diff --git a/assignment-client/src/audio/AudioMixerClientData.h b/assignment-client/src/audio/AudioMixerClientData.h index c30923f411..1314023d36 100644 --- a/assignment-client/src/audio/AudioMixerClientData.h +++ b/assignment-client/src/audio/AudioMixerClientData.h @@ -130,16 +130,13 @@ private: class IgnoreNodeCache { public: - // std::atomic is not copyable - always initialize uncached - IgnoreNodeCache() {} - IgnoreNodeCache(const IgnoreNodeCache& other) {} - void cache(bool shouldIgnore); bool isCached(); bool shouldIgnore(); private: - std::atomic _isCached { false }; + // tbb::atomic supports copy-ctor + tbb::atomic _isCached { false }; bool _shouldIgnore { false }; }; struct IgnoreNodeCacheHasher { std::size_t operator()(const QUuid& key) const { return qHash(key); } };