diff options
author | Chris Robinson <[email protected]> | 2024-01-01 15:54:30 -0800 |
---|---|---|
committer | Chris Robinson <[email protected]> | 2024-01-01 15:54:30 -0800 |
commit | 70a8cf88041d88c49dcd258587e6b84960752851 (patch) | |
tree | 50acfdf6587a68e985aa713567b2e997cb5eef4f /core/device.h | |
parent | 936e654b261b4d1cb604a44da534ba385aa10099 (diff) |
Use an atomic unique_ptr for the device's context array
Diffstat (limited to 'core/device.h')
-rw-r--r-- | core/device.h | 7 |
1 files changed, 1 insertions, 6 deletions
diff --git a/core/device.h b/core/device.h index 9ee07454..1da08727 100644 --- a/core/device.h +++ b/core/device.h @@ -181,11 +181,6 @@ enum class DeviceState : uint8_t { }; struct DeviceBase { - /* To avoid extraneous allocations, a 0-sized FlexArray<ContextBase*> is - * defined globally as a sharable object. - */ - static al::FlexArray<ContextBase*> sEmptyContextArray; - std::atomic<bool> Connected{true}; const DeviceType Type{}; @@ -295,7 +290,7 @@ struct DeviceBase { std::atomic<uint> mMixCount{0u}; // Contexts created on this device - std::atomic<al::FlexArray<ContextBase*>*> mContexts{nullptr}; + al::atomic_unique_ptr<al::FlexArray<ContextBase*>> mContexts; DeviceBase(DeviceType type); |