介绍:什么是线程,线程的优点是什么
线程在Unix系统下,通常被称为轻量级的进程
一进程中的多条线程将共享该进程中的全部系统资源,如虚拟地址空间,文件描述符和信号处理等等。
但同一进程中的多个线程有各自的调用栈(call stack),自己的寄存器环境(register context),自己的线程本地存储(thread-local storage)。 一个进程可以有很多线程,每条线程并行执行不同的任务
线程可以提高应用程序在多核环境下处理注入文件io或者socket io等会差生阻塞的情况的表现性能
在unix系统中,一个进程包含很多东西,包括可执行程序以及一大堆诸如文件描述符地址空间
等资源
在很多情况下,完成相关任务的不同代码需要数据交换,如果采用多进程方式
那么通信就需要在用户空间和内核空间进行频繁的切换,开销恨到
但是如果使用多线程的方式,线程之间的通信就变得非常高效。