一、进程和线程的区别是什么?
1.进程是操作系统对运行时程序的封装,是操作系统进行资源调度和分配的基本单位,实现了操作系统的并发。
2.线程是进程的子任务,是CPU调度和分派的基本单位,用于保证程序的实时性,实现进程内部的并发。
3.一个程序至少有一个进程,一个进程至少有一个线程,线程依赖于进程而存在。
4.进程在执行过程中拥有独立的内存单元,多个线程共享进程的内存。
二、进程间通信方式有哪几种?哪一种通信方式最快?为什么?
三、什么是死锁?死锁产生的必要条件。
概念:在两个或多个并发进程中,如果每个进程持有某种资源,而又等待其他进程释放它们现在保持的资源,在未改变这种状态之前,都不能向前推进,称这一组进程产生了死锁。通俗的讲,就是两个或多个进程无限期的阻塞,相互等待的一种状态。
死锁产生的四个必要条件:
1.互斥条件:资源是独占的并且排他使用,进程间互斥使用资源,任意时刻一个资源只能给一个进程使用,其他进程若申请一个资源,而该资源被另一个进程占有时,则申请者等待直到资源被占有者释放。
2.不可剥夺条件:进程所获得的资源在未使用完毕之前,不能被其他进程强行剥夺,只能由获得该资源的进程释放。
3.请求和保持条件:进程每次申请它所需要的一部分资源,在申请新的资源的同时,继续占用已分配到的资源。
4.循环等待条件:若干进程之间形成一种首尾相接的环形等待资源的关系。
持续更新!!!!!觉得如果有帮助到你,麻烦评论喜欢加关注哟。