Are the functions of ARCONTROLLER_Device_t thread-safe?


#1

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.
Cheers


#2

Nobody? Would really appreciate some help!


#3

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


#4

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: