面试常见题目总结

背景: 后端 python   (更新中...)

一.进程间通信方式

五种:

1.管道 

2.命名管道

3.共享内存

4.信号量

5.消息队列

 

二.进程和线程的区别:

1.进程是操作系统资源分配的基本单位,而线程是任务调度和执行的基本单位

2.内存分配 系统为每个进程分配内存,而线程之间是共享内存的

3.开销 每个进程有自己的内存空间,进程之间切换时开销大,线程共享内存

4.包含关系 没有线程的进程可以看做单线程,如果有多个线程,则该进程有多条线执行,线程是进程的一部分

 

三.死锁条件:

1.互斥条件 资源不能被进程共享

2.请求与保持条件 已经得到资源的进程可以再次申请新的资源

3.非剥夺条件 已经分配的资源不能被强制剥夺

4.循环等待条件 系统中若干进程组成环路,环路中每个进程都在等待相邻进程正占用的资源

 

四.预防死锁:

破坏条件 

 

五.python 垃圾回收机制

引用计数为主 分代回收为辅  空间换时间

引用计数: 当对象被创建 被引用或者被作为参数传递时 或传入容器中,引用计数加一

当对象被显式销毁(del) 或对象引用名被赋予新的对象 或一个对象离开作用域 或该元素从容器中删除或容器被销毁时 引用计数减一

分代回收: 将内存分为三代,0 1 2 对应三个链表,他们的垃圾回收频率随对象的存活时间增大而减小,新创建的对象都会被分配在年轻代,当年轻代链表的总数达到上限时,python垃圾回收机制会被触发,把可以回收的对象回收掉,不可以回收的对象移到中年代,以此类推 

 

六.三次握手四次挥手

 

七.在地址栏输入www.baidu.com 到页面显示发生了什么

 

 

其他.

sessioncookie的联系与区别

 

nginx proxy_pass配置

 

猜你喜欢

转载自www.cnblogs.com/cxl-blog/p/12457366.html