• 面试常见题目总结


    背景: 后端 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配置

     

  • 相关阅读:
    git连接到https服务器时出现“gnutls_handshake() failed”
    Linux内核:通知链 机制
    在Linux驱动中使用notifier通知链
    Linux 内核:RCU机制与使用
    什么是工程师文化?
    在Android源码中查找Java代码中native函数对应的C++实现
    Windows下Qt5程序打包发布
    Android Framework:如何让 App 拿到Power key 值
    Windows 监控小工具
    Windows 远程桌面无法上传文件或者文件夹
  • 原文地址:https://www.cnblogs.com/cxl-blog/p/12457366.html
Copyright © 2020-2023  润新知