以下几节将详细介绍线程分析器可识别的线程 API。
有关这些 API 的更多信息,请参见 Oracle Solaris 开发者文档集的《多线程编程指南》。
pthread_mutex_lock() |
pthread_mutex_trylock() |
pthread_mutex_unlock() |
pthread_rwlock_rdlock() |
pthread_rwlock_tryrdlock() |
pthread_rwlock_wrlock() |
pthread_rwlock_trywrlock() |
pthread_rwlock_unlock() |
pthread_create() |
pthread_join() |
pthread_cond_signal() |
pthread_cond_broadcast() |
pthread_cond_wait() |
pthread_cond_timedwait() |
pthread_cond_reltimedwait_np() |
pthread_barrier_init() |
pthread_barrier_wait() |
pthread_spin_lock() |
pthread_spin_unlock() |
pthread_spin_trylock() |
pthread_mutex_timedlock() |
pthread_mutex_reltimedlock_np() |
pthread_rwlock_timedrdlock() |
pthread_rwlock_reltimedrdlock_np() |
pthread_rwlock_timedwrlock() |
pthread_rwlock_reltimedwrlock_np() |
sem_post() |
sem_wait() |
sem_trywait() |
sem_timedwait() |
sem_reltimedwait_np() |
有关这些 API 的更多信息,请参见 Oracle Solaris 开发者文档集的《多线程编程指南》。
mutex_lock() |
mutex_trylock() |
mutex_unlock() |
rw_rdlock() |
rw_tryrdlock() |
rw_wrlock() |
rw_trywrlock() |
rw_unlock() |
thr_create() |
thr_join() |
cond_signal() |
cond_broadcast() |
cond_wait() |
cond_timedwait() |
cond_reltimedwait() |
sema_post() |
sema_wait() |
sema_trywait() |
calloc() |
malloc() |
realloc() |
valloc() |
memalign() |
有关内存分配 API 的信息,请参见 malloc(3C) 手册页。
memcpy() |
memmove() |
memchr() |
memcmp() |
memset() |
有关内存操作 API 的信息,请参见 memcpy(3C) 手册页。
strcat() |
strncat() |
strlcat() |
strcasecmp() |
strncasecmp() |
strchr() |
strrchr() |
strcmp() |
strncmp() |
strcpy() |
strncpy() |
strlcpy() |
strcspn() |
strspn() |
strdup() |
strlen() |
strpbrk() |
strstr() |
strtok() |
有关字符串操作 API 的信息,请参见 strcat(3C) 手册页。
线程分析器可识别 OpenMP 同步,例如屏障、锁、临界区域、原子区域和任务等待 (taskwait)。
有关更多信息,请参见《Oracle Solaris Studio 12.2:OpenMP API 用户指南》。