Re: [LAD] Communicating between python UI and C++ engine for real time audio?

From: Emanuel Rumpf <xbran@email-addr-hidden>
Date: Fri Nov 04 2011 - 21:51:59 EET

2011/11/4 Paul Davis <paul@email-addr-hidden>:
> On Fri, Nov 4, 2011 at 1:16 PM, Emanuel Rumpf <xbran@email-addr-hidden> wrote:
>
>> While this is restrictive, in the way you mention, I think it's a
>> welcome simplification
>> ( compared to implementing a real-time-capable-linked-list + other
>> rt-structures ),
>> if your use-case doesn't require direct calls to the list (for any reason),
>> then you could request insert/remove/update operations through the
>> rt-ring-buffer.
>
> you can't perform insert/remove/update operations on a "normal" linked
> list in an RT thread.
>

Right. What I meant is: to enqueue the required operations in a
realtime-queue (ringbuffer),
then read that queue from a non-rt thread in order to update the non-rt list.
This implies OTOH, that list-actions take place with a delay (at least
not instantly), but
may work in some situations, e.g. recording an audio stream.

@ Iain and others
Before you start to implement your own, which can take as much time as
your whole project ...
Here is a list of some libs I found, that implement lock-free
structures, STM, etc.
http://wiki.linuxaudio.org/wiki/programming_libraries#lockfree_non-blocking_data_structures_-_libraries
If anything is missing, let me know, or edit yourself.

-- 
E.R.
_______________________________________________
Linux-audio-dev mailing list
Linux-audio-dev@email-addr-hidden
http://lists.linuxaudio.org/listinfo/linux-audio-dev
Received on Sat Nov 5 00:15:01 2011

This archive was generated by hypermail 2.1.8 : Sat Nov 05 2011 - 00:15:02 EET