Just a shot in the dark. > There is a wrapper class around the pthread_rwlock_t types, so they > get unlocked in every case. Have you defined a copy constructor and assignment operator for this class? Dmitry