On Thursday 13 July 2006 02:35, Richard Drummond wrote: > I experimented with lock-free ring-buffers for audio. IMHO, it doesn't > solve any more problems than it creates. > > However, it may be a good idea to off-load windowing stuff to a separate > thread (like you tried in some of your work) if you want to be able to use > other applications whilst using E-UAE and still get good audio performance. Perhaps I should explain a bit more... If you stall the main E-UAE thread (and thus the generation of audio data), then you stall audio output. Thus, if E-UAE has to wait while other apps talk to the windowing system, audio output will stall. However, if you make the communication between E-UAE and the windowing system asynchronous, then the primary reason for stalling the main E-UAE thread is removed. Okay, the graphical output will still be stalled - but it's much better that only graphical output be stalled rather than also CPU emulation and audio output. Cheers, Rich