进程与线程

来源:互联网 发布:linux修改ip 编辑:程序博客网 时间:2024/06/10 11:53
进程与线程

进程
计算机中已执行程序的实体。比如,一个启动了的php-fpm,就是一个进程。

线程
操作系统能够进行运算调度的最小单元。它被包含在进程之中,是进程的实际运作单位。
一条线程指的是进程中一个单一顺序的控制流,一个进程中可以并发多个线程,每条线程并行执行不同的任务。
比如,mysql运行时,mysql启动后,该mysql服务就是一个进程,而mysql的连接、查询的操作,就是线程。

进程与线程的区别
资源(如打开文件):进程间的资源相互独立,同一进程的各线程间共享资源。某进程的线程在其他进程不可见。
通信:进程间通信:消息传递、同步、共享内存、远程过程调用、管道。
线程间通信:直接读写进程数据段(需要进程同步和互斥手段的辅助,以保证数据的一致性)。
调度和切换:线程上下文切换比进程上下文切换要快得多。

线程,是操作系统最小的执行单元,在单线程程序中,任务一个一个地做,必须做完一个任务后,才会去做另一个任务。

redis使用的网络模型是异步io,所有的命令都会在同一个线程执行。因此自然就保证了原子性
0 0