Chromium Code Reviews
DescriptionSimplify notification of a dirty listener.
Instead of the listener updating the dirty state of all panners, just
set a dirty state flag in the listener. Then, when a panner needs
to compute a new azimuth/elevation gain or cone gain, the panner
just checks to see if the listener is dirty.
This gets rid of the data race where both the audio thread and the
main thread are updating the dirty state of a panner. The checking
and setting of the listener state happens on the audio thread.
The race from reading from the hash table of panners in AudioListener
and adding to the table from the main thread is also removed.
BUG=612948, 612955, 613332
TEST=none
Committed: https://crrev.com/a6beb9f31fba1c7892fbfb4911f34e5a13492183
Cr-Commit-Position: refs/heads/master@{#395738}
Patch Set 1 #Patch Set 2 : #Patch Set 3 : Fix test failures #
Total comments: 3
Patch Set 4 : Add trylock for updateState #
Total comments: 1
Patch Set 5 : Fix typo #
Messages
Total messages: 21 (10 generated)
|
||||||||||||||||||||||||||||||||||||||||||||||