(9)Linux 线程
为了激活线程,一个数据结构需要被初始化。
线程数据类型
线程结构和线程函数
1. pthread_t
2. 为线程标识符,调用成功后返回。第三个参数是线程函数的地址。int pthread_create (pthread_t *thread, const pthread_attr_t *attr, void *(*start)(void *), void *arg); - thread
3. pthread_t pthread_self (void);
4. 当线程退出时,它所拥有的系统资源将被释放。int pthread_detach (pthread_t thread); -
5. 阻塞直到指定得线程中断。中断线程的返回值是可选得。int pthread_join (pthread_t thread, void **value_ptr); -
6. int pthread_exit (void *value_ptr);
7. 如果两个线程相同则返回非0值,否则返回0值。int pthread_equal (pthread_t thr1, pthread_t thr2); -
8. pthread_t pthread_self (void); - 允许一个线程获得它自己得标识符。
|
|
线程状态
1. 在系统调度表里准备运行ready –
2. 等待一个互斥或资源blocked –
3. 系统调度执行running –
terminated – 线程一般情况退出或调用 Pthread_exit 退出. 它的资源不被释放,如果它是脱离得或者被主线程回收,资源将被释放。