You copied the Doc URL to your clipboard.

Thread safety in the ARM C library

In the ARM C library:

  • Some functions are never thread-safe, for example setlocale().

  • Some functions are inherently thread-safe, for example memcpy().

  • Some functions, such as malloc(), can be made thread-safe by implementing the _mutex_* functions.

  • Other functions are only thread-safe if you pass the appropriate arguments, for example tmpnam().

Threading problems might occur when your application makes use of the ARM C library in a way that is hidden, for example, if the compiler implicitly calls functions that you have not explicitly called in your source code. Familiarity with the thread-safe C library functions and C library functions that are not thread-safe can help you to avoid this type of threading problem, although in general, it is unlikely to arise.