Cześć
Czy domyślne posixowe mutexy są rekurencyjne?
0
1
Afaik - nie. Trzeba było to ustawić za pomocą pthread_mutexattr_settype przed stworzeniem mutexa i podać jako argument do pthread_mutex_init. Zresztą ja u siebie w pthread.h znalazłem takie coś:
enum pthread_mutextype {
PTHREAD_MUTEX_ERRORCHECK = 1, /* Default POSIX mutex */
PTHREAD_MUTEX_RECURSIVE = 2, /* Recursive mutex */
PTHREAD_MUTEX_NORMAL = 3, /* No error checking */
PTHREAD_MUTEX_ADAPTIVE_NP = 4, /* Adaptive mutex, spins briefly before blocking on lock */
PTHREAD_MUTEX_TYPE_MAX
};