设计并发服务器,使用多进程与多线程有什么区别?
来源:互联网 发布:淘宝兰亭序放大版字帖 编辑:程序博客网 时间:2024/06/06 02:33
网络编程中设计并发服务器,使用多进程与多线程,请问有什么区别?
答案一:
1,进程:子进程是父进程的复制品。子进程获得父进程数据空间、堆和栈的复制品。
2,线程:相对与进程而言,线程是一个更加接近与执行体的概念,它可以与同进程的其他线程共享数据,但拥有自己的栈空间,拥有独立的执行序列。
两者都可以提高程序的并发度,提高程序运行效率和响应时间。
线程和进程在使用上各有优缺点:线程执行开销小,但不利于资源管理和保护;而进程正相反。同时,线程适合于在SMP(Symmetric Multi-Processing,对称多处理结构的简称,是指在一个计算机上汇集了一组处理器(多CPU),各CPU之间共享内存子系统以及总线结构。)机器上运行,而进程则可以跨机器迁移。
答案二:
根本区别就一点:用多进程每个进程有自己的地址空间(address space),线程则共享地址空间。所有其它区别都是由此而来的:
1。速度:线程产生的速度快,线程间的通讯快、切换快等,因为他们在同一个地址空间内。
2。资源利用率:线程的资源利用率比较好也是因为他们在同一个地址空间内。
3。同步问题:线程使用公共变量/内存时需要使用同步机制还是因为他们在同一个地址空间内。
答案一:
1,进程:子进程是父进程的复制品。子进程获得父进程数据空间、堆和栈的复制品。
2,线程:相对与进程而言,线程是一个更加接近与执行体的概念,它可以与同进程的其他线程共享数据,但拥有自己的栈空间,拥有独立的执行序列。
两者都可以提高程序的并发度,提高程序运行效率和响应时间。
线程和进程在使用上各有优缺点:线程执行开销小,但不利于资源管理和保护;而进程正相反。同时,线程适合于在SMP(Symmetric Multi-Processing,对称多处理结构的简称,是指在一个计算机上汇集了一组处理器(多CPU),各CPU之间共享内存子系统以及总线结构。)机器上运行,而进程则可以跨机器迁移。
答案二:
根本区别就一点:用多进程每个进程有自己的地址空间(address space),线程则共享地址空间。所有其它区别都是由此而来的:
1。速度:线程产生的速度快,线程间的通讯快、切换快等,因为他们在同一个地址空间内。
2。资源利用率:线程的资源利用率比较好也是因为他们在同一个地址空间内。
3。同步问题:线程使用公共变量/内存时需要使用同步机制还是因为他们在同一个地址空间内。
阅读全文
0 0
- 网络编程中设计并发服务器,使用多进程与多线程有什么区别?
- 设计并发服务器,使用多进程与多线程有什么区别?
- 编程中设计并发服务器,使用多进程和多线程,请问有什么区别?
- 多进程和多线程有什么区别
- 什么是线程?它与进程有什么区别?为什么要使用多线程?
- 什么是线程?它与进程有什么区别?为什么要使用多线程
- AIX 5.3 的并发多线程SMT 与 intel的超线程有什么区别?
- 多线程与并发服务器设计(23-1)
- 多线程与并发服务器设计(23 - 2 )
- 多线程与并发服务器设计(23-1)
- 多线程与并发服务器设计(23 - 2 )
- “多线程”、“分布式”、“并行”和“并发”什么意思?有个区别?
- 服务器与个人电脑有什么区别
- 多进程、多线程并发服务器代码
- 进程和线程有什么区别?什么是多线程?
- 进程和线程的区别、多进程与多线程、并行与并发、多任务
- 什么是服务器,服务器与普通电脑有什么区别?
- 并发处理随想-多进程与多线程
- Mysql读写分离实例
- linux中系统延时及定时任务
- UVa439 习题 6-4 骑士的移动(Knight Moves)
- 2017杭电多校第三场1005 RXD and dividing(最大化k个斯坦纳树分块的最大权值和)HDU6060
- 聚集索引与非聚集索引的区别
- 设计并发服务器,使用多进程与多线程有什么区别?
- 在Windows的CMD中如何设置支持UTF8编码
- 通知
- 关于Android studio 报错:[clean, :app:generateDebugSources, :app:generateDebugAndroidTestSources, :app:mo
- python进阶强化-5
- 【Linux】bash shell scripts
- Python分词练习
- LeetCode——627. Swap Salary(数据库,sql)
- UVA156 Ananagrams(字符串处理)