Designing a thread-safe routine

A thread safe routine should be careful of the following:

  • Keep routine non-reentrant
  • Avoid using “static” variables. If not protected, you might find unwanted results
  • Use atomic variables for things like states, shared variables (locks such as mutex, semaphore, spinlock are expensive)
  • Always allocate big local variable (> 10k) on heap

A voyager on the journey to technology and art of software development. Pursuing arts, music, photography, and ways to live life on the edge

Leave a Reply

Please log in using one of these methods to post your comment: Logo

You are commenting using your account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.