Most calls in the AK::SoundEngine::Query namespace acquire the global sound engine mutex, which can be held for several milliseconds by the sound engine thread. It is therefore recommended to register a AkGlobalCallbackFunc (using AK::SoundEngine::RegisterGlobalCallback) and do the Queries from there, as your function will then be called at each audio frame from inside the audio thread, already holding the mutex.