linux 线程的绑定 PTHREAD_SCOPE_SYSTEM(绑定的)和PTHREAD_SCOPE_PROCESS(非绑定的)
2013-05-18 12:11
351 查看
详情:http://baike.baidu.com/view/400319.htm
关于线程的绑定,牵涉到另外一个概念:轻进程(LWP:Light Weight Process)。轻进程可以理解为内核线程,它位于用户层和系统层之间。系统对线程资源的分配、对线程的控制是通过轻进程来实现的,一个轻进程可以控制一个或多个线程。默认状况下,启动多少轻进程、哪些轻进程来控制哪些线程是由系统来控制的,这种状况即称为非绑定的。绑定状况下,则顾名思义,即某个线程固定的"绑"在一个轻进程之上。被绑定的线程具有较高的响应速度,这是因为CPU时间片的调度是面向轻进程的,绑定的线程可以保证在需要的时候它总有一个轻进程可用。通过设置被绑定的轻进程的优先级和调度级可以使得绑定的线程满足诸如实时反应之类的要求。
设置线程绑定状态的函数为pthread_attr_setscope,它有两个参数,第一个是指向属性结构的指针,第二个是绑定类型,它有两个取值:PTHREAD_SCOPE_SYSTEM(绑定的)和PTHREAD_SCOPE_PROCESS(非绑定的)。
关于线程的绑定,牵涉到另外一个概念:轻进程(LWP:Light Weight Process)。轻进程可以理解为内核线程,它位于用户层和系统层之间。系统对线程资源的分配、对线程的控制是通过轻进程来实现的,一个轻进程可以控制一个或多个线程。默认状况下,启动多少轻进程、哪些轻进程来控制哪些线程是由系统来控制的,这种状况即称为非绑定的。绑定状况下,则顾名思义,即某个线程固定的"绑"在一个轻进程之上。被绑定的线程具有较高的响应速度,这是因为CPU时间片的调度是面向轻进程的,绑定的线程可以保证在需要的时候它总有一个轻进程可用。通过设置被绑定的轻进程的优先级和调度级可以使得绑定的线程满足诸如实时反应之类的要求。
设置线程绑定状态的函数为pthread_attr_setscope,它有两个参数,第一个是指向属性结构的指针,第二个是绑定类型,它有两个取值:PTHREAD_SCOPE_SYSTEM(绑定的)和PTHREAD_SCOPE_PROCESS(非绑定的)。
相关文章推荐
- linux下将不同线程绑定到不同core和cpu上 pthread_setaffinity_np
- linux下将不同线程绑定到不同core和cpu上 pthread_setaffinity_np
- linux下将不同线程绑定到不同core和cpu上——pthread_setaffinity_np
- linux下将不同线程绑定到不同core和cpu上 pthread_setaffinity_np——005最全面
- Linux中pthread线程使用详解
- pthread_join函数及linux线程
- LInux多线程编程----线程属性pthread_attr_t
- Linux中线程与CPU核的绑定
- Linux进程、线程模型,LWP,pthread
- Linux线程-互斥锁pthread_mutex_t
- Linux线程-互斥锁pthread_mutex_t
- linux 线程创建函数pthread_create的几个传参方式
- Linux--多线程之线程连接pthread_join
- 线程退出【Linux学习】pthread_create主线程与创建的新线程之间退出关系
- pthread_join函数及linux线程
- 2.3 linux实现服务端与多个客户端间通讯-线程Socket-pthread的方法(实验一)
- Linux进程、线程模型,LWP,pthread_self()
- pthread_join函数及linux线程
- Linux _pthread 线程的同步 浅见
- linux中使用pthread_kill函数测试线程是否存活