Debugging with Reaper
-
@dustbro First time I've heard of moodycamels! Something to do with this I think - https://moodycamel.com/blog/2014/a-fast-general-purpose-lock-free-queue-for-c++
-
it must have something to do with the message thread and the audio thread.
-
@Christoph-Hart This has something to do with multiple instances of a plugin running. I can run a single debug instance in Reaper with no issues. As soon as I load a second instance it throws this exception:
JUCE Assertion failure in customdatacontainers.h:933
/** Adds an element to the queue. If it fails because the queue is full, it throws an assertion and return false. */ bool push(const ElementType& newElement) { const bool ok = queue.try_enqueue(std::move(newElement)); jassert_skip_unit_test(ok); return ok; }
Autos
- newElement {type=MidiStart (8 '\b') channel=1 '\x1' number=0 '\0' ...} const hise::HiseEvent & type MidiStart (8 '\b') hise::HiseEvent::Type channel 1 '\x1' unsigned char number 0 '\0' unsigned char value 0 '\0' unsigned char transposeValue 0 '\0' char gain 0 '\0' char semitones 0 '\0' char cents 0 '\0' char eventId 0 unsigned short startOffset 0 unsigned short timestamp 0 unsigned int ok false const bool - queue {frontBlock={value=0x0000000011506050 {front={value=102 } localTail=102 cachelineFiller0=0x0000000011506060 "ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ... ...} } ...} moodycamel::ReaderWriterQueue<hise::HiseEvent,512> - frontBlock {value=0x0000000011506050 {front={value=102 } localTail=102 cachelineFiller0=0x0000000011506060 "ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ... ...} } moodycamel::weak_atomic<moodycamel::ReaderWriterQueue<hise::HiseEvent,512>::Block *> - value 0x0000000011506050 {front={value=102 } localTail=102 cachelineFiller0=0x0000000011506060 "ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ... ...} std::atomic<moodycamel::ReaderWriterQueue<hise::HiseEvent,512>::Block *> - [value] 0x0000000011506050 {front={value=102 } localTail=102 cachelineFiller0=0x0000000011506060 "ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ... ...} moodycamel::ReaderWriterQueue<hise::HiseEvent,512>::Block * - front {value=102 } moodycamel::weak_atomic<unsigned __int64> - value 102 std::atomic<unsigned __int64> [value] 102 unsigned __int64 - [Raw View] {...} std::atomic<unsigned __int64> - std::_Atomic_ullong {_My_val=102 } std::_Atomic_ullong _My_val 102 unsigned __int64 localTail 102 unsigned __int64 - cachelineFiller0 0x0000000011506060 "ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ... char[48] [0] -51 'Í' char [1] -51 'Í' char [2] -51 'Í' char [3] -51 'Í' char [4] -51 'Í' char [5] -51 'Í' char [6] -51 'Í' char [7] -51 'Í' char [8] -51 'Í' char [9] -51 'Í' char [10] -51 'Í' char [11] -51 'Í' char [12] -51 'Í' char [13] -51 'Í' char [14] -51 'Í' char [15] -51 'Í' char [16] -51 'Í' char [17] -51 'Í' char [18] -51 'Í' char [19] -51 'Í' char [20] -51 'Í' char [21] -51 'Í' char [22] -51 'Í' char [23] -51 'Í' char [24] -51 'Í' char [25] -51 'Í' char [26] -51 'Í' char [27] -51 'Í' char [28] -51 'Í' char [29] -51 'Í' char [30] -51 'Í' char [31] -51 'Í' char [32] -51 'Í' char [33] -51 'Í' char [34] -51 'Í' char [35] -51 'Í' char [36] -51 'Í' char [37] -51 'Í' char [38] -51 'Í' char [39] -51 'Í' char [40] -51 'Í' char [41] -51 'Í' char [42] -51 'Í' char [43] -51 'Í' char [44] -51 'Í' char [45] -51 'Í' char [46] -51 'Í' char [47] -51 'Í' char - tail {value=101 } moodycamel::weak_atomic<unsigned __int64> - value 101 std::atomic<unsigned __int64> [value] 101 unsigned __int64 - [Raw View] {...} std::atomic<unsigned __int64> - std::_Atomic_ullong {_My_val=101 } std::_Atomic_ullong _My_val 101 unsigned __int64 localFront 102 unsigned __int64 - cachelineFiller1 0x00000000115060a0 "ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ... char[48] [0] -51 'Í' char [1] -51 'Í' char [2] -51 'Í' char [3] -51 'Í' char [4] -51 'Í' char [5] -51 'Í' char [6] -51 'Í' char [7] -51 'Í' char [8] -51 'Í' char [9] -51 'Í' char [10] -51 'Í' char [11] -51 'Í' char [12] -51 'Í' char [13] -51 'Í' char [14] -51 'Í' char [15] -51 'Í' char [16] -51 'Í' char [17] -51 'Í' char [18] -51 'Í' char [19] -51 'Í' char [20] -51 'Í' char [21] -51 'Í' char [22] -51 'Í' char [23] -51 'Í' char [24] -51 'Í' char [25] -51 'Í' char [26] -51 'Í' char [27] -51 'Í' char [28] -51 'Í' char [29] -51 'Í' char [30] -51 'Í' char [31] -51 'Í' char [32] -51 'Í' char [33] -51 'Í' char [34] -51 'Í' char [35] -51 'Í' char [36] -51 'Í' char [37] -51 'Í' char [38] -51 'Í' char [39] -51 'Í' char [40] -51 'Í' char [41] -51 'Í' char [42] -51 'Í' char [43] -51 'Í' char [44] -51 'Í' char [45] -51 'Í' char [46] -51 'Í' char [47] -51 'Í' char - next {value=0x0000000011506050 {front={value=102 } localTail=102 cachelineFiller0=0x0000000011506060 "ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ... ...} } moodycamel::weak_atomic<moodycamel::ReaderWriterQueue<hise::HiseEvent,512>::Block *> - value 0x0000000011506050 {front={value=102 } localTail=102 cachelineFiller0=0x0000000011506060 "ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ... ...} std::atomic<moodycamel::ReaderWriterQueue<hise::HiseEvent,512>::Block *> - [value] 0x0000000011506050 {front={value=102 } localTail=102 cachelineFiller0=0x0000000011506060 "ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ... ...} moodycamel::ReaderWriterQueue<hise::HiseEvent,512>::Block * - front {value=102 } moodycamel::weak_atomic<unsigned __int64> - value 102 std::atomic<unsigned __int64> [value] 102 unsigned __int64 - [Raw View] {...} std::atomic<unsigned __int64> - std::_Atomic_ullong {_My_val=102 } std::_Atomic_ullong _My_val 102 unsigned __int64 localTail 102 unsigned __int64 - cachelineFiller0 0x0000000011506060 "ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ... char[48] [0] -51 'Í' char [1] -51 'Í' char [2] -51 'Í' char [3] -51 'Í' char [4] -51 'Í' char [5] -51 'Í' char [6] -51 'Í' char [7] -51 'Í' char [8] -51 'Í' char [9] -51 'Í' char [10] -51 'Í' char [11] -51 'Í' char [12] -51 'Í' char [13] -51 'Í' char [14] -51 'Í' char [15] -51 'Í' char [16] -51 'Í' char [17] -51 'Í' char [18] -51 'Í' char [19] -51 'Í' char [20] -51 'Í' char [21] -51 'Í' char [22] -51 'Í' char [23] -51 'Í' char [24] -51 'Í' char [25] -51 'Í' char [26] -51 'Í' char [27] -51 'Í' char [28] -51 'Í' char [29] -51 'Í' char [30] -51 'Í' char [31] -51 'Í' char [32] -51 'Í' char [33] -51 'Í' char [34] -51 'Í' char [35] -51 'Í' char [36] -51 'Í' char [37] -51 'Í' char [38] -51 'Í' char [39] -51 'Í' char [40] -51 'Í' char [41] -51 'Í' char [42] -51 'Í' char [43] -51 'Í' char [44] -51 'Í' char [45] -51 'Í' char [46] -51 'Í' char [47] -51 'Í' char - tail {value=101 } moodycamel::weak_atomic<unsigned __int64> - value 101 std::atomic<unsigned __int64> [value] 101 unsigned __int64 - [Raw View] {...} std::atomic<unsigned __int64> - std::_Atomic_ullong {_My_val=101 } std::_Atomic_ullong _My_val 101 unsigned __int64 localFront 102 unsigned __int64 - cachelineFiller1 0x00000000115060a0 "ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ... char[48] [0] -51 'Í' char [1] -51 'Í' char [2] -51 'Í' char [3] -51 'Í' char [4] -51 'Í' char [5] -51 'Í' char [6] -51 'Í' char [7] -51 'Í' char [8] -51 'Í' char [9] -51 'Í' char [10] -51 'Í' char [11] -51 'Í' char [12] -51 'Í' char [13] -51 'Í' char [14] -51 'Í' char [15] -51 'Í' char [16] -51 'Í' char [17] -51 'Í' char [18] -51 'Í' char [19] -51 'Í' char [20] -51 'Í' char [21] -51 'Í' char [22] -51 'Í' char [23] -51 'Í' char [24] -51 'Í' char [25] -51 'Í' char [26] -51 'Í' char [27] -51 'Í' char [28] -51 'Í' char [29] -51 'Í' char [30] -51 'Í' char [31] -51 'Í' char [32] -51 'Í' char [33] -51 'Í' char [34] -51 'Í' char [35] -51 'Í' char [36] -51 'Í' char [37] -51 'Í' char [38] -51 'Í' char [39] -51 'Í' char [40] -51 'Í' char [41] -51 'Í' char [42] -51 'Í' char [43] -51 'Í' char [44] -51 'Í' char [45] -51 'Í' char [46] -51 'Í' char [47] -51 'Í' char - next {value=0x0000000011506050 {front={value=102 } localTail=102 cachelineFiller0=0x0000000011506060 "ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ... ...} } moodycamel::weak_atomic<moodycamel::ReaderWriterQueue<hise::HiseEvent,512>::Block *> - value 0x0000000011506050 {front={value=102 } localTail=102 cachelineFiller0=0x0000000011506060 "ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ... ...} std::atomic<moodycamel::ReaderWriterQueue<hise::HiseEvent,512>::Block *> - [value] 0x0000000011506050 {front={value=102 } localTail=102 cachelineFiller0=0x0000000011506060 "ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ... ...} moodycamel::ReaderWriterQueue<hise::HiseEvent,512>::Block * - front {value=102 } moodycamel::weak_atomic<unsigned __int64> - value 102 std::atomic<unsigned __int64> [value] 102 unsigned __int64 - [Raw View] {...} std::atomic<unsigned __int64> - std::_Atomic_ullong {_My_val=102 } std::_Atomic_ullong _My_val 102 unsigned __int64 localTail 102 unsigned __int64 - cachelineFiller0 0x0000000011506060 "ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ... char[48] [0] -51 'Í' char [1] -51 'Í' char [2] -51 'Í' char [3] -51 'Í' char [4] -51 'Í' char [5] -51 'Í' char [6] -51 'Í' char [7] -51 'Í' char [8] -51 'Í' char [9] -51 'Í' char [10] -51 'Í' char [11] -51 'Í' char [12] -51 'Í' char [13] -51 'Í' char [14] -51 'Í' char [15] -51 'Í' char [16] -51 'Í' char [17] -51 'Í' char [18] -51 'Í' char [19] -51 'Í' char [20] -51 'Í' char [21] -51 'Í' char [22] -51 'Í' char [23] -51 'Í' char [24] -51 'Í' char [25] -51 'Í' char [26] -51 'Í' char [27] -51 'Í' char [28] -51 'Í' char [29] -51 'Í' char [30] -51 'Í' char [31] -51 'Í' char [32] -51 'Í' char [33] -51 'Í' char [34] -51 'Í' char [35] -51 'Í' char [36] -51 'Í' char [37] -51 'Í' char [38] -51 'Í' char [39] -51 'Í' char [40] -51 'Í' char [41] -51 'Í' char [42] -51 'Í' char [43] -51 'Í' char [44] -51 'Í' char [45] -51 'Í' char [46] -51 'Í' char [47] -51 'Í' char - tail {value=101 } moodycamel::weak_atomic<unsigned __int64> - value 101 std::atomic<unsigned __int64> [value] 101 unsigned __int64 - [Raw View] {...} std::atomic<unsigned __int64> - std::_Atomic_ullong {_My_val=101 } std::_Atomic_ullong _My_val 101 unsigned __int64 localFront 102 unsigned __int64 - cachelineFiller1 0x00000000115060a0 "ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ... char[48] [0] -51 'Í' char [1] -51 'Í' char [2] -51 'Í' char [3] -51 'Í' char [4] -51 'Í' char [5] -51 'Í' char [6] -51 'Í' char [7] -51 'Í' char [8] -51 'Í' char [9] -51 'Í' char [10] -51 'Í' char [11] -51 'Í' char [12] -51 'Í' char [13] -51 'Í' char [14] -51 'Í' char [15] -51 'Í' char [16] -51 'Í' char [17] -51 'Í' char [18] -51 'Í' char [19] -51 'Í' char [20] -51 'Í' char [21] -51 'Í' char [22] -51 'Í' char [23] -51 'Í' char [24] -51 'Í' char [25] -51 'Í' char [26] -51 'Í' char [27] -51 'Í' char [28] -51 'Í' char [29] -51 'Í' char [30] -51 'Í' char [31] -51 'Í' char [32] -51 'Í' char [33] -51 'Í' char [34] -51 'Í' char [35] -51 'Í' char [36] -51 'Í' char [37] -51 'Í' char [38] -51 'Í' char [39] -51 'Í' char [40] -51 'Í' char [41] -51 'Í' char [42] -51 'Í' char [43] -51 'Í' char [44] -51 'Í' char [45] -51 'Í' char [46] -51 'Í' char [47] -51 'Í' char - next {value=0x0000000011506050 {front={value=102 } localTail=102 cachelineFiller0=0x0000000011506060 "ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ... ...} } moodycamel::weak_atomic<moodycamel::ReaderWriterQueue<hise::HiseEvent,512>::Block *> - value 0x0000000011506050 {front={value=102 } localTail=102 cachelineFiller0=0x0000000011506060 "ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ... ...} std::atomic<moodycamel::ReaderWriterQueue<hise::HiseEvent,512>::Block *> - [value] 0x0000000011506050 {front={value=102 } localTail=102 cachelineFiller0=0x0000000011506060 "ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ... ...} moodycamel::ReaderWriterQueue<hise::HiseEvent,512>::Block * - front {value=102 } moodycamel::weak_atomic<unsigned __int64> - value 102 std::atomic<unsigned __int64> [value] 102 unsigned __int64 - [Raw View] {...} std::atomic<unsigned __int64> + std::_Atomic_ullong {_My_val=102 } std::_Atomic_ullong localTail 102 unsigned __int64 - cachelineFiller0 0x0000000011506060 "ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ... char[48] [0] -51 'Í' char [1] -51 'Í' char [2] -51 'Í' char [3] -51 'Í' char [4] -51 'Í' char [5] -51 'Í' char [6] -51 'Í' char [7] -51 'Í' char [8] -51 'Í' char [9] -51 'Í' char [10] -51 'Í' char [11] -51 'Í' char [12] -51 'Í' char [13] -51 'Í' char [14] -51 'Í' char [15] -51 'Í' char [16] -51 'Í' char [17] -51 'Í' char [18] -51 'Í' char [19] -51 'Í' char [20] -51 'Í' char [21] -51 'Í' char [22] -51 'Í' char [23] -51 'Í' char [24] -51 'Í' char [25] -51 'Í' char [26] -51 'Í' char [27] -51 'Í' char [28] -51 'Í' char [29] -51 'Í' char [30] -51 'Í' char [31] -51 'Í' char [32] -51 'Í' char [33] -51 'Í' char [34] -51 'Í' char [35] -51 'Í' char [36] -51 'Í' char [37] -51 'Í' char [38] -51 'Í' char [39] -51 'Í' char [40] -51 'Í' char [41] -51 'Í' char [42] -51 'Í' char [43] -51 'Í' char [44] -51 'Í' char [45] -51 'Í' char [46] -51 'Í' char [47] -51 'Í' char - tail {value=101 } moodycamel::weak_atomic<unsigned __int64> - value 101 std::atomic<unsigned __int64> [value] 101 unsigned __int64 + [Raw View] {...} std::atomic<unsigned __int64> localFront 102 unsigned __int64 - cachelineFiller1 0x00000000115060a0 "ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ... char[48] [0] -51 'Í' char [1] -51 'Í' char [2] -51 'Í' char [3] -51 'Í' char [4] -51 'Í' char [5] -51 'Í' char [6] -51 'Í' char [7] -51 'Í' char [8] -51 'Í' char [9] -51 'Í' char [10] -51 'Í' char [11] -51 'Í' char [12] -51 'Í' char [13] -51 'Í' char [14] -51 'Í' char [15] -51 'Í' char [16] -51 'Í' char [17] -51 'Í' char [18] -51 'Í' char [19] -51 'Í' char [20] -51 'Í' char [21] -51 'Í' char [22] -51 'Í' char [23] -51 'Í' char [24] -51 'Í' char [25] -51 'Í' char [26] -51 'Í' char [27] -51 'Í' char [28] -51 'Í' char [29] -51 'Í' char [30] -51 'Í' char [31] -51 'Í' char [32] -51 'Í' char [33] -51 'Í' char [34] -51 'Í' char [35] -51 'Í' char [36] -51 'Í' char [37] -51 'Í' char [38] -51 'Í' char [39] -51 'Í' char [40] -51 'Í' char [41] -51 'Í' char [42] -51 'Í' char [43] -51 'Í' char [44] -51 'Í' char [45] -51 'Í' char [46] -51 'Í' char [47] -51 'Í' char - next {value=0x0000000011506050 {front={value=102 } localTail=102 cachelineFiller0=0x0000000011506060 "ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ... ...} } moodycamel::weak_atomic<moodycamel::ReaderWriterQueue<hise::HiseEvent,512>::Block *> - value 0x0000000011506050 {front={value=102 } localTail=102 cachelineFiller0=0x0000000011506060 "ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ... ...} std::atomic<moodycamel::ReaderWriterQueue<hise::HiseEvent,512>::Block *> - [value] 0x0000000011506050 {front={value=102 } localTail=102 cachelineFiller0=0x0000000011506060 "ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ... ...} moodycamel::ReaderWriterQueue<hise::HiseEvent,512>::Block * + front {value=102 } moodycamel::weak_atomic<unsigned __int64> localTail 102 unsigned __int64 + cachelineFiller0 0x0000000011506060 "ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ... char[48] + tail {value=101 } moodycamel::weak_atomic<unsigned __int64> localFront 102 unsigned __int64 + cachelineFiller1 0x00000000115060a0 "ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ... char[48] + next {value=0x0000000011506050 {front={value=102 } localTail=102 cachelineFiller0=0x0000000011506060 "ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ... ...} } moodycamel::weak_atomic<moodycamel::ReaderWriterQueue<hise::HiseEvent,512>::Block *> + data 0x00000000115060f0 "\b\x1" char * sizeMask 1023 const unsigned __int64 + rawThis 0x0000000011506050 "f" char * - [Raw View] {...} std::atomic<moodycamel::ReaderWriterQueue<hise::HiseEvent,512>::Block *> + std::_Atomic_address {_My_val=290480208 } std::_Atomic_address - data 0x00000000115060f0 "\b\x1" char * 8 '\b' char sizeMask 1023 const unsigned __int64 - rawThis 0x0000000011506050 "f" char * 102 'f' char - [Raw View] {...} std::atomic<moodycamel::ReaderWriterQueue<hise::HiseEvent,512>::Block *> - std::_Atomic_address {_My_val=290480208 } std::_Atomic_address _My_val 290480208 unsigned __int64 - data 0x00000000115060f0 "\b\x1" char * 8 '\b' char sizeMask 1023 const unsigned __int64 - rawThis 0x0000000011506050 "f" char * 102 'f' char - [Raw View] {...} std::atomic<moodycamel::ReaderWriterQueue<hise::HiseEvent,512>::Block *> - std::_Atomic_address {_My_val=290480208 } std::_Atomic_address _My_val 290480208 unsigned __int64 - data 0x00000000115060f0 "\b\x1" char * 8 '\b' char sizeMask 1023 const unsigned __int64 - rawThis 0x0000000011506050 "f" char * 102 'f' char - [Raw View] {...} std::atomic<moodycamel::ReaderWriterQueue<hise::HiseEvent,512>::Block *> - std::_Atomic_address {_My_val=290480208 } std::_Atomic_address _My_val 290480208 unsigned __int64 - data 0x00000000115060f0 "\b\x1" char * 8 '\b' char sizeMask 1023 const unsigned __int64 - rawThis 0x0000000011506050 "f" char * 102 'f' char - [Raw View] {...} std::atomic<moodycamel::ReaderWriterQueue<hise::HiseEvent,512>::Block *> - std::_Atomic_address {_My_val=290480208 } std::_Atomic_address _My_val 290480208 unsigned __int64 - cachelineFiller 0x00000000115bca78 "ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ... char[56] [0] -51 'Í' char [1] -51 'Í' char [2] -51 'Í' char [3] -51 'Í' char [4] -51 'Í' char [5] -51 'Í' char [6] -51 'Í' char [7] -51 'Í' char [8] -51 'Í' char [9] -51 'Í' char [10] -51 'Í' char [11] -51 'Í' char [12] -51 'Í' char [13] -51 'Í' char [14] -51 'Í' char [15] -51 'Í' char [16] -51 'Í' char [17] -51 'Í' char [18] -51 'Í' char [19] -51 'Í' char [20] -51 'Í' char [21] -51 'Í' char [22] -51 'Í' char [23] -51 'Í' char [24] -51 'Í' char [25] -51 'Í' char [26] -51 'Í' char [27] -51 'Í' char [28] -51 'Í' char [29] -51 'Í' char [30] -51 'Í' char [31] -51 'Í' char [32] -51 'Í' char [33] -51 'Í' char [34] -51 'Í' char [35] -51 'Í' char [36] -51 'Í' char [37] -51 'Í' char [38] -51 'Í' char [39] -51 'Í' char [40] -51 'Í' char [41] -51 'Í' char [42] -51 'Í' char [43] -51 'Í' char [44] -51 'Í' char [45] -51 'Í' char [46] -51 'Í' char [47] -51 'Í' char [48] -51 'Í' char [49] -51 'Í' char [50] -51 'Í' char [51] -51 'Í' char [52] -51 'Í' char [53] -51 'Í' char [54] -51 'Í' char [55] -51 'Í' char - tailBlock {value=0x0000000011506050 {front={value=102 } localTail=102 cachelineFiller0=0x0000000011506060 "ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ... ...} } moodycamel::weak_atomic<moodycamel::ReaderWriterQueue<hise::HiseEvent,512>::Block *> - value 0x0000000011506050 {front={value=102 } localTail=102 cachelineFiller0=0x0000000011506060 "ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ... ...} std::atomic<moodycamel::ReaderWriterQueue<hise::HiseEvent,512>::Block *> - [value] 0x0000000011506050 {front={value=102 } localTail=102 cachelineFiller0=0x0000000011506060 "ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ... ...} moodycamel::ReaderWriterQueue<hise::HiseEvent,512>::Block * - front {value=102 } moodycamel::weak_atomic<unsigned __int64> - value 102 std::atomic<unsigned __int64> [value] 102 unsigned __int64 - [Raw View] {...} std::atomic<unsigned __int64> - std::_Atomic_ullong {_My_val=102 } std::_Atomic_ullong _My_val 102 unsigned __int64 localTail 102 unsigned __int64 - cachelineFiller0 0x0000000011506060 "ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ... char[48] [0] -51 'Í' char [1] -51 'Í' char [2] -51 'Í' char [3] -51 'Í' char [4] -51 'Í' char [5] -51 'Í' char [6] -51 'Í' char [7] -51 'Í' char [8] -51 'Í' char [9] -51 'Í' char [10] -51 'Í' char [11] -51 'Í' char [12] -51 'Í' char [13] -51 'Í' char [14] -51 'Í' char [15] -51 'Í' char [16] -51 'Í' char [17] -51 'Í' char [18] -51 'Í' char [19] -51 'Í' char [20] -51 'Í' char [21] -51 'Í' char [22] -51 'Í' char [23] -51 'Í' char [24] -51 'Í' char [25] -51 'Í' char [26] -51 'Í' char [27] -51 'Í' char [28] -51 'Í' char [29] -51 'Í' char [30] -51 'Í' char [31] -51 'Í' char [32] -51 'Í' char [33] -51 'Í' char [34] -51 'Í' char [35] -51 'Í' char [36] -51 'Í' char [37] -51 'Í' char [38] -51 'Í' char [39] -51 'Í' char [40] -51 'Í' char [41] -51 'Í' char [42] -51 'Í' char [43] -51 'Í' char [44] -51 'Í' char [45] -51 'Í' char [46] -51 'Í' char [47] -51 'Í' char - tail {value=101 } moodycamel::weak_atomic<unsigned __int64> - value 101 std::atomic<unsigned __int64> [value] 101 unsigned __int64 - [Raw View] {...} std::atomic<unsigned __int64> - std::_Atomic_ullong {_My_val=101 } std::_Atomic_ullong _My_val 101 unsigned __int64 localFront 102 unsigned __int64 - cachelineFiller1 0x00000000115060a0 "ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ... char[48] [0] -51 'Í' char [1] -51 'Í' char [2] -51 'Í' char [3] -51 'Í' char [4] -51 'Í' char [5] -51 'Í' char [6] -51 'Í' char [7] -51 'Í' char [8] -51 'Í' char [9] -51 'Í' char [10] -51 'Í' char [11] -51 'Í' char [12] -51 'Í' char [13] -51 'Í' char [14] -51 'Í' char [15] -51 'Í' char [16] -51 'Í' char [17] -51 'Í' char [18] -51 'Í' char [19] -51 'Í' char [20] -51 'Í' char [21] -51 'Í' char [22] -51 'Í' char [23] -51 'Í' char [24] -51 'Í' char [25] -51 'Í' char [26] -51 'Í' char [27] -51 'Í' char [28] -51 'Í' char [29] -51 'Í' char [30] -51 'Í' char [31] -51 'Í' char [32] -51 'Í' char [33] -51 'Í' char [34] -51 'Í' char [35] -51 'Í' char [36] -51 'Í' char [37] -51 'Í' char [38] -51 'Í' char [39] -51 'Í' char [40] -51 'Í' char [41] -51 'Í' char [42] -51 'Í' char [43] -51 'Í' char [44] -51 'Í' char [45] -51 'Í' char [46] -51 'Í' char [47] -51 'Í' char - next {value=0x0000000011506050 {front={value=102 } localTail=102 cachelineFiller0=0x0000000011506060 "ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ... ...} } moodycamel::weak_atomic<moodycamel::ReaderWriterQueue<hise::HiseEvent,512>::Block *> - value 0x0000000011506050 {front={value=102 } localTail=102 cachelineFiller0=0x0000000011506060 "ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ... ...} std::atomic<moodycamel::ReaderWriterQueue<hise::HiseEvent,512>::Block *> - [value] 0x0000000011506050 {front={value=102 } localTail=102 cachelineFiller0=0x0000000011506060 "ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ... ...} moodycamel::ReaderWriterQueue<hise::HiseEvent,512>::Block * - front {value=102 } moodycamel::weak_atomic<unsigned __int64> - value 102 std::atomic<unsigned __int64> [value] 102 unsigned __int64 - [Raw View] {...} std::atomic<unsigned __int64> - std::_Atomic_ullong {_My_val=102 } std::_Atomic_ullong _My_val 102 unsigned __int64 localTail 102 unsigned __int64 - cachelineFiller0 0x0000000011506060 "ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ... char[48] [0] -51 'Í' char [1] -51 'Í' char [2] -51 'Í' char [3] -51 'Í' char [4] -51 'Í' char [5] -51 'Í' char [6] -51 'Í' char [7] -51 'Í' char [8] -51 'Í' char [9] -51 'Í' char [10] -51 'Í' char [11] -51 'Í' char [12] -51 'Í' char [13] -51 'Í' char [14] -51 'Í' char [15] -51 'Í' char [16] -51 'Í' char [17] -51 'Í' char [18] -51 'Í' char [19] -51 'Í' char [20] -51 'Í' char [21] -51 'Í' char [22] -51 'Í' char [23] -51 'Í' char [24] -51 'Í' char [25] -51 'Í' char [26] -51 'Í' char [27] -51 'Í' char [28] -51 'Í' char [29] -51 'Í' char [30] -51 'Í' char [31] -51 'Í' char [32] -51 'Í' char [33] -51 'Í' char [34] -51 'Í' char [35] -51 'Í' char [36] -51 'Í' char [37] -51 'Í' char [38] -51 'Í' char [39] -51 'Í' char [40] -51 'Í' char [41] -51 'Í' char [42] -51 'Í' char [43] -51 'Í' char [44] -51 'Í' char [45] -51 'Í' char [46] -51 'Í' char [47] -51 'Í' char - tail {value=101 } moodycamel::weak_atomic<unsigned __int64> - value 101 std::atomic<unsigned __int64> [value] 101 unsigned __int64 - [Raw View] {...} std::atomic<unsigned __int64> - std::_Atomic_ullong {_My_val=101 } std::_Atomic_ullong _My_val 101 unsigned __int64 localFront 102 unsigned __int64 - cachelineFiller1 0x00000000115060a0 "ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ... char[48] [0] -51 'Í' char [1] -51 'Í' char [2] -51 'Í' char [3] -51 'Í' char [4] -51 'Í' char [5] -51 'Í' char [6] -51 'Í' char [7] -51 'Í' char [8] -51 'Í' char [9] -51 'Í' char [10] -51 'Í' char [11] -51 'Í' char [12] -51 'Í' char [13] -51 'Í' char [14] -51 'Í' char [15] -51 'Í' char [16] -51 'Í' char [17] -51 'Í' char [18] -51 'Í' char [19] -51 'Í' char [20] -51 'Í' char [21] -51 'Í' char [22] -51 'Í' char [23] -51 'Í' char [24] -51 'Í' char [25] -51 'Í' char [26] -51 'Í' char [27] -51 'Í' char [28] -51 'Í' char [29] -51 'Í' char [30] -51 'Í' char [31] -51 'Í' char [32] -51 'Í' char [33] -51 'Í' char [34] -51 'Í' char [35] -51 'Í' char [36] -51 'Í' char [37] -51 'Í' char [38] -51 'Í' char [39] -51 'Í' char [40] -51 'Í' char [41] -51 'Í' char [42] -51 'Í' char [43] -51 'Í' char [44] -51 'Í' char [45] -51 'Í' char [46] -51 'Í' char [47] -51 'Í' char - next {value=0x0000000011506050 {front={value=102 } localTail=102 cachelineFiller0=0x0000000011506060 "ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ... ...} } moodycamel::weak_atomic<moodycamel::ReaderWriterQueue<hise::HiseEvent,512>::Block *> + value 0x0000000011506050 {front={value=102 } localTail=102 cachelineFiller0=0x0000000011506060 "ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ... ...} std::atomic<moodycamel::ReaderWriterQueue<hise::HiseEvent,512>::Block *> - data 0x00000000115060f0 "\b\x1" char * 8 '\b' char sizeMask 1023 const unsigned __int64 - rawThis 0x0000000011506050 "f" char * 102 'f' char - [Raw View] {...} std::atomic<moodycamel::ReaderWriterQueue<hise::HiseEvent,512>::Block *> - std::_Atomic_address {_My_val=290480208 } std::_Atomic_address _My_val 290480208 unsigned __int64 - data 0x00000000115060f0 "\b\x1" char * 8 '\b' char sizeMask 1023 const unsigned __int64 - rawThis 0x0000000011506050 "f" char * 102 'f' char - [Raw View] {...} std::atomic<moodycamel::ReaderWriterQueue<hise::HiseEvent,512>::Block *> - std::_Atomic_address {_My_val=290480208 } std::_Atomic_address _My_val 290480208 unsigned __int64 largestBlockSize 1024 unsigned __int64 enqueuing false bool dequeuing false bool - this 0x00000000115bca68 {queue={frontBlock={value=0x0000000011506050 {front={value=102 } localTail=102 cachelineFiller0=0x0000000011506060 "ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ... ...} } ...} } hise::LockfreeQueue<hise::HiseEvent> * - __vfptr 0x00007fffacb5da60 {Pawn Shop Comp 2_Debug_x64.vst3!void(* hise::LockfreeQueue<hise::HiseEvent>::`vftable'[2])()} {...} void * * [0] 0x00007fffaaa166ed {Pawn Shop Comp 2_Debug_x64.vst3!hise::LockfreeQueue<class hise::HiseEvent>::`vector deleting destructor'(unsigned int)} void * - queue {frontBlock={value=0x0000000011506050 {front={value=102 } localTail=102 cachelineFiller0=0x0000000011506060 "ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ... ...} } ...} moodycamel::ReaderWriterQueue<hise::HiseEvent,512> - frontBlock {value=0x0000000011506050 {front={value=102 } localTail=102 cachelineFiller0=0x0000000011506060 "ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ... ...} } moodycamel::weak_atomic<moodycamel::ReaderWriterQueue<hise::HiseEvent,512>::Block *> + value 0x0000000011506050 {front={value=102 } localTail=102 cachelineFiller0=0x0000000011506060 "ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ... ...} std::atomic<moodycamel::ReaderWriterQueue<hise::HiseEvent,512>::Block *> - cachelineFiller 0x00000000115bca78 "ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ... char[56] [0] -51 'Í' char [1] -51 'Í' char [2] -51 'Í' char [3] -51 'Í' char [4] -51 'Í' char [5] -51 'Í' char [6] -51 'Í' char [7] -51 'Í' char [8] -51 'Í' char [9] -51 'Í' char [10] -51 'Í' char [11] -51 'Í' char [12] -51 'Í' char [13] -51 'Í' char [14] -51 'Í' char [15] -51 'Í' char [16] -51 'Í' char [17] -51 'Í' char [18] -51 'Í' char [19] -51 'Í' char [20] -51 'Í' char [21] -51 'Í' char [22] -51 'Í' char [23] -51 'Í' char [24] -51 'Í' char [25] -51 'Í' char [26] -51 'Í' char [27] -51 'Í' char [28] -51 'Í' char [29] -51 'Í' char [30] -51 'Í' char [31] -51 'Í' char [32] -51 'Í' char [33] -51 'Í' char [34] -51 'Í' char [35] -51 'Í' char [36] -51 'Í' char [37] -51 'Í' char [38] -51 'Í' char [39] -51 'Í' char [40] -51 'Í' char [41] -51 'Í' char [42] -51 'Í' char [43] -51 'Í' char [44] -51 'Í' char [45] -51 'Í' char [46] -51 'Í' char [47] -51 'Í' char [48] -51 'Í' char [49] -51 'Í' char [50] -51 'Í' char [51] -51 'Í' char [52] -51 'Í' char [53] -51 'Í' char [54] -51 'Í' char [55] -51 'Í' char - tailBlock {value=0x0000000011506050 {front={value=102 } localTail=102 cachelineFiller0=0x0000000011506060 "ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ... ...} } moodycamel::weak_atomic<moodycamel::ReaderWriterQueue<hise::HiseEvent,512>::Block *> - value 0x0000000011506050 {front={value=102 } localTail=102 cachelineFiller0=0x0000000011506060 "ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ... ...} std::atomic<moodycamel::ReaderWriterQueue<hise::HiseEvent,512>::Block *> - [value] 0x0000000011506050 {front={value=102 } localTail=102 cachelineFiller0=0x0000000011506060 "ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ... ...} moodycamel::ReaderWriterQueue<hise::HiseEvent,512>::Block * - front {value=102 } moodycamel::weak_atomic<unsigned __int64> - value 102 std::atomic<unsigned __int64> [value] 102 unsigned __int64 - [Raw View] {...} std::atomic<unsigned __int64> - std::_Atomic_ullong {_My_val=102 } std::_Atomic_ullong _My_val 102 unsigned __int64 localTail 102 unsigned __int64 - cachelineFiller0 0x0000000011506060 "ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ... char[48] [0] -51 'Í' char [1] -51 'Í' char [2] -51 'Í' char [3] -51 'Í' char [4] -51 'Í' char [5] -51 'Í' char [6] -51 'Í' char [7] -51 'Í' char [8] -51 'Í' char [9] -51 'Í' char [10] -51 'Í' char [11] -51 'Í' char [12] -51 'Í' char [13] -51 'Í' char [14] -51 'Í' char [15] -51 'Í' char [16] -51 'Í' char [17] -51 'Í' char [18] -51 'Í' char [19] -51 'Í' char [20] -51 'Í' char [21] -51 'Í' char [22] -51 'Í' char [23] -51 'Í' char [24] -51 'Í' char [25] -51 'Í' char [26] -51 'Í' char [27] -51 'Í' char [28] -51 'Í' char [29] -51 'Í' char [30] -51 'Í' char [31] -51 'Í' char [32] -51 'Í' char [33] -51 'Í' char [34] -51 'Í' char [35] -51 'Í' char [36] -51 'Í' char [37] -51 'Í' char [38] -51 'Í' char [39] -51 'Í' char [40] -51 'Í' char [41] -51 'Í' char [42] -51 'Í' char [43] -51 'Í' char [44] -51 'Í' char [45] -51 'Í' char [46] -51 'Í' char [47] -51 'Í' char - tail {value=101 } moodycamel::weak_atomic<unsigned __int64> - value 101 std::atomic<unsigned __int64> [value] 101 unsigned __int64 - [Raw View] {...} std::atomic<unsigned __int64> - std::_Atomic_ullong {_My_val=101 } std::_Atomic_ullong _My_val 101 unsigned __int64 localFront 102 unsigned __int64 - cachelineFiller1 0x00000000115060a0 "ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ... char[48] [0] -51 'Í' char [1] -51 'Í' char [2] -51 'Í' char [3] -51 'Í' char [4] -51 'Í' char [5] -51 'Í' char [6] -51 'Í' char [7] -51 'Í' char [8] -51 'Í' char [9] -51 'Í' char [10] -51 'Í' char [11] -51 'Í' char [12] -51 'Í' char [13] -51 'Í' char [14] -51 'Í' char [15] -51 'Í' char [16] -51 'Í' char [17] -51 'Í' char [18] -51 'Í' char [19] -51 'Í' char [20] -51 'Í' char [21] -51 'Í' char [22] -51 'Í' char [23] -51 'Í' char [24] -51 'Í' char [25] -51 'Í' char [26] -51 'Í' char [27] -51 'Í' char [28] -51 'Í' char [29] -51 'Í' char [30] -51 'Í' char [31] -51 'Í' char [32] -51 'Í' char [33] -51 'Í' char [34] -51 'Í' char [35] -51 'Í' char [36] -51 'Í' char [37] -51 'Í' char [38] -51 'Í' char [39] -51 'Í' char [40] -51 'Í' char [41] -51 'Í' char [42] -51 'Í' char [43] -51 'Í' char [44] -51 'Í' char [45] -51 'Í' char [46] -51 'Í' char [47] -51 'Í' char - next {value=0x0000000011506050 {front={value=102 } localTail=102 cachelineFiller0=0x0000000011506060 "ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ... ...} } moodycamel::weak_atomic<moodycamel::ReaderWriterQueue<hise::HiseEvent,512>::Block *> - value 0x0000000011506050 {front={value=102 } localTail=102 cachelineFiller0=0x0000000011506060 "ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ... ...} std::atomic<moodycamel::ReaderWriterQueue<hise::HiseEvent,512>::Block *> + [value] 0x0000000011506050 {front={value=102 } localTail=102 cachelineFiller0=0x0000000011506060 "ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ... ...} moodycamel::ReaderWriterQueue<hise::HiseEvent,512>::Block * + [Raw View] {...} std::atomic<moodycamel::ReaderWriterQueue<hise::HiseEvent,512>::Block *> - data 0x00000000115060f0 "\b\x1" char * 8 '\b' char sizeMask 1023 const unsigned __int64 - rawThis 0x0000000011506050 "f" char * 102 'f' char - [Raw View] {...} std::atomic<moodycamel::ReaderWriterQueue<hise::HiseEvent,512>::Block *> - std::_Atomic_address {_My_val=290480208 } std::_Atomic_address _My_val 290480208 unsigned __int64 largestBlockSize 1024 unsigned __int64 enqueuing false bool dequeuing false bool
-
The moodycamel queue is being used for communicating between audio and UI. If the queue is full, it means that you are sending too many messages from the audio thread.
Do you have some
setAttribute()
or something like that that is being called once per buffer (or even more)? -
@Christoph-Hart good to know. I'm using setAttribute about 25 times in this script. Lemme see if I can narrow it down to a particular call.
-
@Christoph-Hart said in Debugging with Reaper:
The moodycamel queue is being used for communicating between audio and UI
Do all plugins created in HISE share the same queue?
-
No but they share the same UI thread and if something clogs it with hammering the queue it will more likely be full with multiple instances.
-
@dustbro said in Debugging with Reaper:
@Christoph-Hart good to know. I'm using setAttribute about 25 times in this script. Lemme see if I can narrow it down to a particular call.
Have you found any solution for this? Any suggestions.... etc?
I am using setAttribute approx. 80 times in the plugin. And 20 times in an inline function. -
@orange said in Debugging with Reaper:
Have you found any solution for this?
Nothing on this end. I definitely have issues with multiple instances. I've been so jammed up I haven't had time for more debugging
-
@dustbro yeah me too. That's a very sad thing....
-
The moodycamel strikes again, we got a solution for this yet?
-
-
This issue is a real pain in the ass........
-
It might sound crazy but, is it possible to add 1 or 2 seconds loading time delay into middle of the script (for fx plugins)? So while the initialization each instance will load a little bit until the break code in the middle of the script (1 or 2 seconds breathing) then load the rest.
I have a theory that quick loading instances crash more :) Maybe it is a bullshit, I don't know but it's worth to try it :D
-
-
@Christoph-Hart It was only happening for me in the compiled plugin and I've only test on GNU/Linux. I'll run some more tests and do a Windows build if I can recreate it there.
-
@Christoph-Hart Issue only seems to be happening for this particular project with a debug build, haven't been able to recreate it with the release version so I guess my problem is solved.
-
I should have some time to whip up an example this week
-
@Christoph-Hart said in Debugging with Reaper:
the proper solution is to set a flag during initialization that prevents the message queue from getting hammered like this.
How to do Such A Flag?
Any Advice is Much Appreciated? -
fixed multithreading crash
is this commit a fix for this issue?