Ensure that all in-process log calls never block an app's threads (#11431)
* Ensure that all in-process log calls never block an app's threads.
* nvdaHelperRemote logMessage: only queue via APC if the manager thread is initialized.
* Fix indentation
* nvdaHelper logging support: refactor for readability.
* nvdaHelper logging: lock the log queue when inserting / fetching.
* nvdaHelper logging: rather than popping items from tempQueue individually, just let them all get destroied when the queue is destroied.
Co-authored-by: Reef Turner <feerrenrut@users.noreply.github.com>
* nvdaHelper logging: if log_flushQueue is called outside of the manager thread, queue the call back to the manager thread with apc.
Co-authored-by: Reef Turner <feerrenrut@users.noreply.github.com>
* nvdaHelper logging:
* Only try to queue a call to log_flushQueue via APC if the manager thread actually exists yet.
* Declare log_flushQueue_apcFunc early so it actualy compiles :)
* Remove a redundant blank line.
* Update What's new
Co-authored-by: Reef Turner <feerrenrut@users.noreply.github.com>