On Wed, Dec 2, 2009 at 5:16 AM, Stéphane Letz <letz(a)grame.fr> wrote:
So does this mean than going into freewheeling should
be handled in a special way: like dropping RT mode for additional worker threads and so
on (then when freewheeling stops, you would have to setup RT mode again...)
it does imply that, yes.
An quite interesting use case. I also always wondering
how Ardour (using an additional thread for disk access) handles freewheeling on/off,
regarding thread management.
ardour's disk i/o thread ("the butler") doesn't run with RT scheduling,
ever.
there is a MIDI I/O thread (at least in 2.X) that tries to run with
low RT priority (it doesn't care if it doesn't get it). i haven't come
up with a reason yet to want to reset the scheduling of this thread.
We could even imagine that JACK could provide some
support for this kind of requirement : allowing to define additional worker threads,
automatically handling priority change when freewheeling on/off....
i think we offer enough already by offering functions to
acquire+release RT scheduling. unless we don't export them ... i doubt
if applications with such architectures want JACK itself to try to
micromanage this level of detail. they already have to make their own
decisions about thread priorities.