1.从并发性上看:也就是切换效率。进程的切换效率低,线程的切换效率高。那么为什么线程的切换效率高呢?这涉及到上下文切换的问题,在进程切换的时候涉及到现场运行环境有:cpu寄存器,程序计数器,还有用户空间信息和内核空间信息pcb等;但是线程切换的时候涉及到的现场环境有:cpu寄存器,程序计数器等;需要保存和恢复的信息比进程的少,所以线程的切换效率高。
2.从内存上看:进程有独立的虚拟地址空间;但是线程没有,线程只有栈,本地存储等独立空间。
3.从所属关系上看:线程属于进程,而进程包含多个线程
4.从健壮性上看:进程的健壮性更高一些,因为如果一个进程挂了,其他的进程不会收到影响;但是如果一个线程挂了,那么进程也就挂了,对应其他线程也挂了。
5.进程间的信息难以共享,需要通过进程间通信的方式才能实现;而线程是共享进程的内存,共享信息十分方便。