<p><strong>1.什么是进程,什么是线程?</strong></p>
讯享网
进程是系统中正在运行的一个程序,程序一旦运行就是进程。
进程可以看成程序执行的一个实例。进程是系统资源分配的独立实体,每个进程都拥有独立的
地址空间。
线程是CPU独立运行和独立调度的基本单位。
一个进程可以拥有多个线程,线程是进程的一个实体,是进程的一条执行路径。
2.进程和线程之间的区别是什么:
第一:因为进程拥有独立的堆栈空间和数据段,所以每当启动一个新的进程必须分配给它独立的
地址空间,系统开销比较大,而线程不一样,线程拥有独立的堆栈空间,但是共享数据段,它们
彼此之间使用相同的地址空间,共享大部分数据,比进程更节俭,开销比较小,切换速度也比进
程快,效率高。
第二:通信机制上面,正因为进程之间互不干扰,相互独立,进程的通信机制相对很复杂,譬如
管道,信号,消息队列,共享内存,套接字等通信机制,而线程由于共享数据段所以通信机制很
方便。
3.多进程和多线程的优缺点
进程优点:每个进程互相独立,不影响主程序的稳定性,子进程崩溃没关系;
进程缺点:需要跨进程边界,如果有大数据量传送,就不太好,适合小数据量传送、密集运算
多进程调度开销比较大。
线程优点:能适当提高程序的执行效率,能适当提高资源的利用率。
线程缺点:每个线程与主程序共用地址空间,受限于2GB地址空间;
4.什么时候使用进程,什么时候使用线程
-> 当频繁创建和销毁的时候,当然是线程

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/200075.html