LMS API and threads

what are the rules for using LMS API from multiple threads? Where should I put locks (mutexes)? For example in an application with 3 threads - one for GUI, which controls various parameters like frequency, gain, sample rate, etc., one for TX and one for RX. I tried to go through source code of some projects using LMS API and they are using different approaches. Is there some documentation for this?

Thank you


RecvStream and SendStream just read/write data to FIFOs and can be run in different thread(s) without locking.
All other functions are not made with thread safety in mind, so to be on the safe side you should use them from one thread or under lock.

Thank you,
this is exactly what I wanted to know.