Is AudioProcessorParameter thread safe?


#1

Hello,

Not a C++ expert, but I do not see any Atomic stuff in the AudioProcessorParameter class.

Is there a possibility of conflict between message/audio thread ?

Thanks,

Louis


#2

Setting a float value is an atomic operation on a 32 bit OS, so I think this is the reason, why it is not necessary to use Atomic and locks. Same is int. Setting a double value is only atomic on 64 bit OS, so would be a problem on VST 2.x, but as far as I can see the parameter classes always use float as value, so I see no problems there.


#3

In this video they said that float is no more atomic since c++11

https://youtu.be/boPEO2auJj4?t=35m54s


#4

Oops, sorry ;-)

So I'm curious for an "official" statement


#5

Background information about std::atomic<> and Juce by Jules and Timur:

http://www.juce.com/comment/316065#comment-316065


#6

The video example is a 32bit application run on a 64 bit os. Might still be atomic in 64 bits application.