It's considered safe to post AudioManager* as Unretained() to the audio thread, because it's
destroyed on audio thread during browser main loop destruction.
But if a task posted to audio thread before AM destructor posts AM
operation to audio thread, then we have AM operation scheduled after AM
destruction.
We need to make sure no operations on it can be executed on audio thread after AudioManager destructor.
It's considered safe to post AudioManager* as Unretained() to the audio thread, because it's
destroyed on audio thread during browser main loop destruction.
But if a task posted to audio thread before AM destructor posts AM
operation to audio thread, then we have AM operation scheduled after AM
destruction.
We need to make sure no operations on it can be executed on audio thread after AudioManager destructor.
Same is applicable to AudioSystem.
Comment 1 by alokp@chromium.org
, Mar 28 2017