线程和进程的区别:
1、从底层来说,进程=cpu加载上下文+cpu执行+cpu保存上下文,线程=(在共享进程的上下文的基础下,将程序的实现分为多个程序段来执行,每个程序段就被称为线程),也就是说线程和进程都是cpu工作时间段的描述,只不过线程的cpu工作时间段小,进程的cpu工作时间段大。
2、在同一进程中的不同线程共享相同的地址空间,而不同的进程则在内存中有独立的地址空间。因此线程可以读写同样的数据结构和变量,便于线程之间的通信。相反,进程间通信(IPC)很困难且消耗更多资源。
3、一个线程死掉就等于整个进程死掉,而一个进程死掉,由于保护机制,其他进程不受影响,所以多进程的程序要比多线程的程序健壮(稳定)。
4、一个进程可包含多个线程,线程属于进程。
5、线程是调度(获得的cpu的所有权)的基本单位,进程是资源分配的基本单位。
0 留言