View Issue Details
|ID||Project||Category||View Status||Date Submitted||Last Update|
|0001264||OpenMPT||General||public||2019-09-22 18:07||2020-05-24 12:53|
|Reporter||Saga Musix||Assigned To|
|Summary||0001264: Turn CriticalSection into shared mutex|
We should consider turning the
Read access to
|Tags||No tags attached.|
|Has the bug occurred in previous versions?|
|Tested code revision (in case you know it)|
It probably makes sense to split out a separate mutex for the PlayState at the same time. The PlayState is written-to by the audio thread, while the rest of CSoundFile is not.
I thought the same initially but it isn't 100% true: The "invert loop" MOD command modifies sample data, so if we do that, an extra lock would have to be acquired when that command is encountered.
The Paula resampler and OPL emulator states (which are not part of PlayState) are also written to in the mixer but there are no heap allocations in those apart from the initial mixer initialization.