[LAD] Synchronizig arg update in callback and process in main function

Len Ovens len at ovenwerks.net
Mon Jan 15 16:19:16 UTC 2018

On Mon, 15 Jan 2018, Benny Alexandar wrote:

> I have registered process callback and also a pointer to data struct as arg
> parameter. 
> Whenever callback happens this arg is typecasted to data struct, and update the
> data struct.
> For eg every 20ms process callback happens and updated the data struct arg,
> and every 100ms  main function reads the data struct. While reading  and
> processing
> the data process callback can happen and update it.
> How to make sure when main function is reading data struct the process callback
> is not updated,
> or any other ways to synchronize these two ? Any example app for this.

Jack provides a ring buffer for this purpose. Here is an example
Just make things clear, the ring buffer thinks in bytes and so each sample 
will take more than one byte (we hope :) 

Len Ovens

More information about the Linux-audio-dev mailing list