[LV2] Worker extension
sk at k-hornz.de
Fri Mar 23 11:16:36 PDT 2012
On 3/23/12 6:20 PM, David Robillard wrote:
> If you equate priority to context, then you don't have priorities at
> all. A context simply executes things in the order they arrive.
> Ringbuffer in, ringbuffer out, for loop. No priorities, no scheduling,
> no fancy data structures. Easy.
seems the most sensible to me, too.
>>> What is an example of a use case for this anyway? I suspect there may
>>> be legitimate reason to add *one* more context, but only reluctantly.
>>> This is a very slippery slope.
>> e.g. in a plugin that streams samples from disk you obviously don't want
>> to wait until a long-running non-realtime task has finished.
> Such as?
e.g. a sound file being loaded into ram or an audio feature analysis task.
> It would be problematic to have a dramatically long-running anything in
> the worker since this could block other plugins as well. We probably
> need some rules for this.
in some cases it's acceptable to wait (e.g. when loading a file), in
other cases it's not (e.g. when streaming data from disk).
More information about the Devel