pthread函数"_np"后缀

osg*_*sgx 9 posix glibc pthreads

"_np"后缀在这里意味着什么:

pthread_mutex_timedlock_np
Run Code Online (Sandbox Code Playgroud)

或者在宏中

PTHREAD_MUTEX_TIMED_NP
Run Code Online (Sandbox Code Playgroud)

UPD:

来自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 
};
Run Code Online (Sandbox Code Playgroud)

是否定义__USE_UNIX98 了_NP函数/宏的可移植性?

Has*_*yed 9

非标准扩展 - 即非便携式.ref(来自互联网档案馆)


nos*_*nos 6

它代表非便携式.

也就是说,它是标准pthreads函数的平台特定扩展.