Are the functions of ARCONTROLLER_Device_t thread-safe?


Product: Bebop2
Product version: FW 4.2.1 and 4.3.1
SDK version: 3.12.6
Use of libARController: YES
SDK platform: Unix
Reproductible with the official app: Not tried

Hi everyone,

I am developing a multi-threaded application based on the UNIX Sample for the Bebop2. I decided to use mutexes to ensure synchronization while accessing global/shared variables that are used by multiple threads.
Basically, I have two threads that are sending commands to the Bebop. Now my question is: Are the piloting functions of the device controller (such as deviceController->aRDrone3->sendPilotingMoveBy()) thread-safe? Or do I need to use mutexes for my device controller as well?

Would be thankful for any input on this.


Nobody? Would really appreciate some help!


Yes, I use them across a multitude of threads. You do need to be mindful of the “send” commands as they are blocking.


Thanks! That’s good news. Although it also means that the source of my issues is to be found somewhere else. Might have follow-up questions for you in the future. :slight_smile: