进程和线程的区别与联系_仙女教母️的博客-CSDN博客_线程和进程的关系和区别
Linux 进程通信_free_to_fly的博客-CSDN博客_linux进程通信
grpc-我们为什么要用gRpc?gRpc快在哪里? - 知乎 grpc 介绍
gRPC:一个性能强到爆的RPC框架_石杉的架构笔记的博客-CSDN博客
ES工作原理: ES工作原理_蒋楠鑫的博客-CSDN博客_es原理
MySQL 常见的 9 种优化方法_肥肥技术宅的博客-CSDN博客_mysql优化
还不了解 MyISAM 和 InnoDB 的区别?看这里就够了_扛麻袋的少年的博客-CSDN博客_innodb和myisam的区别
Linux的SOCKET编程详解_hguisu的博客-CSDN博客_socket编程
一.进程和线程基本概念
1.进程:进程是操作系统中资源分配的基本单位。进程是操作系统对正在运行程序的一种抽象,可以将进程看作程序的一次运行。
2.线程:线程是操作系统中调度执行的基本单位。一个线程是一个“执行流”,每个线程之间都可以按照顺序执行自己的代码,多个线程“同时”执行多份代码。
二.进程和线程之间的区别与联系
1.一个进程可以包含多个线程,线程在进程的内部。
2.进程之间的资源是独立的,线程之间的资源则是共享的。
每个进程都有独立的虚拟地址空间,也有之间独立的文件描述符表,同一进程的多个线程之间则共用这一份虚拟地址空间和文件描述符表。
3.进程是操作系统中资源分配的基本单位,线程是操作系统中调度执行的基本单位。
4.多个进程同时执行时,如果一个进程崩溃,一般不会影响其他进程,而同一进程内的多个线程之间,如果一个线程崩溃,很可能使得整个进程崩溃。
5.进程的上下文切换速度比较慢,而线程的上下文切换速度比较快。
6.进程的创建/销毁/调度开销大,线程的创建/销毁/调度开销相对少很多。