dsound: Move resampling away from mixing thread

Maarten Lankhorst m.b.lankhorst at gmail.com
Tue Jul 31 05:01:57 CDT 2007

Unfortunately I cannot make this patch any smaller, I already split this
one up, the other fragments are already in wine now.

This patch changes the responsibility of who's responsible for the
resampling, first it was the mixing thread, now it happens in the
application, to make sure there are no race conditions, the critical
section is replaced with a rw lock. Operations that ONLY happen on the
mixed data are locked with RtlAcquireResourceShared, all other
operations are with RtlAcquireResourceExclusive. This makes sure the
mixer thread doesn't have to fight all the time for each lock, which
would otherwise have caused the effects of this patch to be negative.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0004-dsound-Precache-perfectpitch-TM.patch
Type: text/x-patch
Size: 47811 bytes
Desc: not available
Url : http://www.winehq.org/pipermail/wine-patches/attachments/20070731/91dc733f/0004-dsound-Precache-perfectpitch-TM-0001.bin

More information about the wine-patches mailing list