一, 什么是线程
1, 线程是操作系统能够进行运算调度的最小单位. 它被包含在进程中, 是进程中的实际运作单位. 一条线程指的是进程中一个单一顺序的控制流, 一个进程中可以并发多个线程, 每条线程并行执行不同的任务. 每个进程至少包含一个线程.
二, 什么是进程
1, 一个进程就是一个程序的实例, 每个进程里面都包含了执行这个程序的资源.
2, 虚拟内存地址, 执行的代码, 打开的句柄, 连接操作系统的接口, 用户 id, 独立的进程号, 环境变量, 优先级, 最大最小的空间大小, 和至少一个线程, 每一个进程默认启动时候是有一个主线程的, 主线程又可以创建新的线程.
三, 进程与线程的区别
1, 线程共享内存数据.
2, 线程可以访问进程中所有的数据.
3, 可以直接和其它线程进行通讯, 但是两个进程之间通信必须通过第三方.
4, 进程有自己独立的内存空间
5, 一个进程可以产生一个子进程但是和子进程之间也无法直接进行数据访问.
6, 父进程要产生子进程需要将自己克隆一份.
7, 同一个进程中的其它线程是可以互相交互的, 而一个进程对其子进程只能由控制作用.
8, 对主线程的修改有可能会影响其它的线程
来源: http://www.bubuko.com/infodetail-2847197.html