Recursive Mutexes and Condition variables

Hi All,

I’m pretty new to QNX and am starting to port some of my existing code to work on my QNX box.

I have several libraries that are working on Windows and flavours of Linux and am trying to get these to work on QNX too.

I am having a slight issue getting my C++ wrappers around the posix Mutex and Condition, as on the other platforms I can use a Recursive Mutex with the Condition, but QNX does not allow this (nor does it need to to be posix compilant). I have a fairly large amount of code that is written with the expectation of being able to recursively lock a Mutex, so I really would like to be able to do this.

I am wondering if anybody else has come up against this and what they did? Does anybody know of any well known (and tested) methods of simulating recursive mutexes so that I can use them with Conditions?

Cheers,

Michael

Look at these functions in your QNX Library Reference.

pthread_mutexattr_init()
pthread_mutexattr_setrecursive()
pthread_mutex_init()

May I direct you to the poco library to help you write portable code between, Linux, Windows and QNX6.

appinf.com/poco/info/index.html