网络编程中设计并发服务器,使用多进程 与 多线程 ,请问有什么区别?

答案一:并发

1,进程:子进程是父进程的复制品。子进程得到父进程数据空间、堆和栈的复制品。spa

2,线程:相对与进程而言,线程是一个更加接近与执行体的概念,它能够与同进程的其余线程共享数据,但拥有本身的栈空间,拥有独立的执行序列。线程

二者均可以提升程序的并发度,提升程序运行效率和响应时间。进程

线程和进程在使用上各有优缺点:线程执行开销小,但不利于资源管理和保护;而进程正相反。同时,线程适合于在SMP机器上运行,而进程则能够跨机器迁移。内存

答案二:资源

根本区别就一点:用多进程每一个进程有本身的地址空间(address space),线程则共享地址空间。全部其它区别都是由此而来的:同步

1。速度:线程产生的速度快,线程间的通信快、切换快等,由于他们在同一个地址空间内。多进程

2。资源利用率:线程的资源利用率比较好也是由于他们在同一个地址空间内。效率

3。同步问题:线程使用公共变量/内存时须要使用同步机制仍是由于他们在同一个地址空间内。变量

相关文章
相关标签/搜索