教程链接:
http://www.ibm.com/developerworks/cn/linux/thread/posix_thread1/
http://www.ibm.com/developerworks/cn/linux/thread/posix_thread2/
http://www.ibm.com/developerworks/cn/linux/thread/posix_thread3/
pthread内部类型定义:
Type definition file path list:
/usr/include/x86_64-linux-gnu/bits/pthreadtypes.h
/usr/include/x86_64-linux-gnu/bits/siginfo.h
/usr/include/x86_64-linux-gnu/bits/semaphore.h
typedef unsigned long in pthread_t;
union pthread_attr_t
{
char __size[56];
long int __align;
};
union pthread_attr_t
{
char __size[56];
long int __align;
};
typedef union pthread_attr_t pthread_attr_t;
typedef union
{
struct __pthread_mutex_s
{
int __lock;
unsigned int __count;
int __owner;
unsigned int __nusers;
int __kind;
int __spins;
__pthread_list_t __list;
} __data;
char __size[40];
long int __align;
} pthread_mutex_t;
typedef union
{
struct
{
int __lock;
unsigned int __futex;
__extension__ unsigned long long int __total_seq;
__extension__ unsigned long long int __wakeup_seq;
__extension__ unsigned long long int __woken_seq;
void *__mutex;
unsigned int __nwaiters;
unsigned int __broadcast_seq;
} __data;
char __size[48];
__extension__ long long int __align;
} pthread_cond_t;
#if __WORDSIZE == 64
# define __SIZEOF_SEM_T 32
#else
# define __SIZEOF_SEM_T 16
#endif
typedef union
{
char __size[__SIZEOF_SEM_T];
long int __align;
} sem_t;
有关信号量和互斥锁的区别
请见