views:

106

answers:

2

What does "_np" suffix mean here:

pthread_mutex_timedlock_np

or in macros

PTHREAD_MUTEX_TIMED_NP

Upd:

From glibc2.2

enum 
{ 
  PTHREAD_MUTEX_TIMED_NP, 
  PTHREAD_MUTEX_RECURSIVE_NP, 
  PTHREAD_MUTEX_ERRORCHECK_NP, 
  PTHREAD_MUTEX_ADAPTIVE_NP 
#ifdef __USE_UNIX98 
  , 
  PTHREAD_MUTEX_NORMAL = PTHREAD_MUTEX_TIMED_NP, 
  PTHREAD_MUTEX_RECURSIVE = PTHREAD_MUTEX_RECURSIVE_NP, 
  PTHREAD_MUTEX_ERRORCHECK = PTHREAD_MUTEX_ERRORCHECK_NP, 
  PTHREAD_MUTEX_DEFAULT = PTHREAD_MUTEX_NORMAL 
#endif 
#ifdef __USE_GNU 
  /* For compatibility. */ 
  , PTHREAD_MUTEX_FAST_NP = PTHREAD_MUTEX_ADAPTIVE_NP 
#endif 
};

Does defining __USE_UNIX98 change portability of _NP functions/macro?

+1  A: 

Non standard extensions -- i.e., Non Portable. ref

Hassan Syed
+1  A: 

It stands for Non Portable.

That is, it's platform specific extensions to the standard pthreads functions.

nos