区别:
1、每个进程拥有独立的资源,而线程间共享代码段(代码和常量)、数据段(静态变量和全局变量)、扩展段(堆),只有栈段是各线程私有的。
2、cpu切换不同进程比切换同一进程的不同线程慢
3、进程比线程高可用,多进程中崩掉一个进程不影响其他进程的运行,而多线程中崩掉一个线程将导致所有线程崩溃
4、线程间的通信比进程间通信简单
综上,由于调度和资源的限制,多线程比多进程吞吐量大
联系:
一个进程可以拥有多个线程,而一个线程只能属于一个进程
区别:
1、每个进程拥有独立的资源,而线程间共享代码段(代码和常量)、数据段(静态变量和全局变量)、扩展段(堆),只有栈段是各线程私有的。
2、cpu切换不同进程比切换同一进程的不同线程慢
3、进程比线程高可用,多进程中崩掉一个进程不影响其他进程的运行,而多线程中崩掉一个线程将导致所有线程崩溃
4、线程间的通信比进程间通信简单
综上,由于调度和资源的限制,多线程比多进程吞吐量大
联系:
一个进程可以拥有多个线程,而一个线程只能属于一个进程