线程
出发点
提高资源利用率
提高系统吞吐量
降低编程复杂性
使用线程的好处
单独的线程去处理某种事件,简化异步事件的代码,如服务端采用一对一的线程去处理IO事件
相比多进程,更加容易进行数据共享
将问题分解,改善程序的吞吐量。
在单线程的情况下,任务是串行化执行的,根据任务本身地的特点,分解成多个步骤,并行
对于交互程序,改善响应时间
相对于多进程,开销更小
要点
线程标识采用
pthread_t
,底层类型取决于实现,相等判断需要使用pthread_equal
创建新线程后,与主线程的调用顺序依赖于OS的线程实现和调度算法
在pthread(NTPL)实现中,默认栈大小为8M,可通过如下方式查询:
ulimit -s
getrlimit
pthread_attr_getstacksize