08 2019 档案

摘要:死锁现象与递归锁 死锁现象 递归锁 ​ 递归锁有一个计数的功能, 原数字为0, 上一次锁, 计数+1, 释放一次锁, 计数 1 ​ 只要递归锁上面的数字不为零, 其他线程就不能抢锁 信号量 ​ 也是一种锁, 控制并发数量 GIL全局解释器锁 ​ 理论上来说: 单个进程的多线程可以利用多核 ​ 但是, 阅读全文
posted @ 2019-08-23 19:52 边城bei 阅读(143) 评论(0) 推荐(0)
摘要:生产者消费者模型 进程: ​ 生产者消费者模型 ​ 编程思想, 模型, 设计模式, 理论等等, 都是交给你一种编程的方法, 以后遇到类似的情况, 套用即可 生产者消费者模型三要素 ​ 生产者: 产生数据的 ​ 消费者: 接收数据做进一步处理的 ​ 容器: 盆(队列) 队列容器的作用 ​ 起到缓冲的作 阅读全文
posted @ 2019-08-22 08:05 边城bei 阅读(165) 评论(0) 推荐(0)
摘要:僵尸进程与孤儿进程 基于unix环境(linux, macOS) ​ 主进程需要等待子进程结束之后, 主进程才结束 ​ 主进程时刻监测子进程的运行状态, 当子进程结束之后, 一段时间之内, 将子进程进行回收 为什么主进程不在子进程结束后马上对其回收呢? ​ 主进程与子进程是异步关系, 主进程无法马上 阅读全文
posted @ 2019-08-21 22:17 边城bei 阅读(194) 评论(0) 推荐(0)
摘要:进程创建的两种方式 第一种方法: 第二种方法: 简单应用 进程pid 获取进程pid 验证进程之间的空间隔离 进程对象join方法 单个子进程使用join join让主进程等待子进程结束之后, 在执行主进程 多个子进程使用join 验证一: 验证2: 优化验证2: 进程的其他参数 terminate 阅读全文
posted @ 2019-08-20 20:56 边城bei 阅读(142) 评论(0) 推荐(0)
摘要:进程的基础 进程的基础 程序 ​ 一堆静态的代码文件 进程 ​ 一个正在运行的程序进程, 抽象的概念 ​ 由操作系统操控调用交于CPU运行 被CPU运行 操作系统 操作系统的基础 ​ 管理控制协调计算机中硬件与软件的关系 操作系统的作用 ​ 将一些对硬件操作的复杂丑陋的接口, 变成简单美丽的接口 ​ 阅读全文
posted @ 2019-08-19 18:27 边城bei 阅读(133) 评论(0) 推荐(0)
摘要:自定制报头 1.recv的工作原理 2.高大上版解决粘包方式(自定义报头) 阅读全文
posted @ 2019-08-16 20:35 边城bei 阅读(569) 评论(0) 推荐(0)
摘要:缓冲区 ​ 每个 socket 被创建后, 都会分配两个缓冲区, 输入缓冲区和输出缓冲区 ​ write( )/send( ) 并不立即向网络中传输数据, 而是先将数据写入缓冲区中, 再由TCP协议将数据从缓冲区发送到目标机器. 一旦将数据写入到缓冲区, 函数就可以成功返回, 不管他们有没有到达目标 阅读全文
posted @ 2019-08-15 20:34 边城bei 阅读(240) 评论(0) 推荐(0)
摘要:socket套接字 ​ socket是处于应用层与传输层之间的抽象层, 他是一组操作起来非常简单的接口(接受数据)此接口接受数据之后交由操作系统 ​ 为什么存在socket抽象层? ​ 如果直接与操作系统数据交互非常麻烦, 繁琐, socket对这些繁琐的操作高度的封装, 简化 ​ socket在p 阅读全文
posted @ 2019-08-14 20:33 边城bei 阅读(142) 评论(0) 推荐(0)
摘要:网络协议篇 1.C/S B/S架构 ​ C: client端 ​ B: browse 浏览器 ​ S: server端 C/S架构: ​ 基于客户端与服务端之间的通信 ​ QQ, 游戏, 皮皮虾, 快手, 抖音 优点: ​ 个性化设置, 响应速度快 缺点: ​ 开发成本, 维护成本高, 占用空间, 阅读全文
posted @ 2019-08-13 20:32 边城bei 阅读(273) 评论(0) 推荐(0)
摘要:异常处理 错误分类 语法错误 逻辑错误 try except 结构分类 结构1 单分支 结构2 多分支 结构3 万能异常处理 处理所有python可以识别的异常 tips 什么时候用万能? 什么时候用多分支? 如果你对错误信息不关心, 只是想排除信息继续让程序走下去, 用万能异常. 你对错误信息要进 阅读全文
posted @ 2019-08-12 20:09 边城bei 阅读(110) 评论(0) 推荐(0)
摘要:1.元类type type 与 object 的关系 2.反射 ​ 程序对自己内部代码的一种自省方式 反射是什么 ​ 通过字符串去操作对象的方式 具体方法 反射角度 实例对象 类 本模块 练习题 其他模块 3.函数与方法 通过打印函数名的方式区别方法和函数 总结 ​ python 中一切皆对象, 类 阅读全文
posted @ 2019-08-09 20:08 边城bei 阅读(140) 评论(0) 推荐(0)
摘要:1.类的私有成员 私有类的属性 在类的内部可以访问 在类的外部不能访问 在类的派生类不能访问 私有对象属性 只能在类的内部使用,不能在类外部以及派生类使用 私有类的方法 对于私有成员来说: 当你遇到重要的数据,功能,(只允许本类使用的一些方法,数据)设置成私有成员 特殊方法(默认不使用) 2.类的其 阅读全文
posted @ 2019-08-08 21:08 边城bei 阅读(319) 评论(0) 推荐(0)
摘要:1.三大特性 封装 ​ 把很多数据封装到⼀个对象中. 把固定功能的代码封装到⼀个代码块, 函数, 对象, 打包成模块. 这都属于封装的思想. 具体的情况具体分析. 比如. 你写了⼀个很⽜B的函数. 那这个也可以被称为封装. 在⾯向对象思想中. 是把⼀些看似⽆关紧要的内容组合到⼀起统⼀进⾏存储和使⽤. 阅读全文
posted @ 2019-08-07 18:18 边城bei 阅读(175) 评论(0) 推荐(0)
摘要:继承 1.继承初识 ​ 如果一个类别A“继承自”另一个类别B,就把这个A称为“B的子类别”,而把B称为“A的父类别”也可以称“B是A的超类”。继承可以使得子类别具有父类别的各种属性和方法,而不需要再次编写相同的代码。在令子类别继承父类别的同时,可以重新定义某些属性,并重写某些方法,即覆盖父类别的原有 阅读全文
posted @ 2019-08-06 21:37 边城bei 阅读(129) 评论(0) 推荐(0)
摘要:1.类的空间问题 1.1何处可以添加对象属性 总结: 对象的属性不仅可以在\_\_init\_\_里面添加,还可以在类的其他方法或者类的外面添加 1.2何处可以添加类的静态属性 总结: 类的属性不仅可以在类内部添加, 还可以在类的外部添加 1.3对象如何找到类的属性 总结: 对象查找属性的顺序:先从 阅读全文
posted @ 2019-08-05 21:34 边城bei 阅读(158) 评论(0) 推荐(0)
摘要:面向对象初识 1.函数式编程 对 面向过程编程的两个特点 1. 减少代码的重复性 1. 增强代码的可读性 2.面向对象编程 对 面向过程编程 2.1 什么是面向对象 ​ 面向对象的程序设计的核心是对象(上帝式思维),要理解对象为何物,必须把自己当成上帝,上帝眼里世间存在的万物皆为对象,不存在的也可以 阅读全文
posted @ 2019-08-02 08:06 边城bei 阅读(158) 评论(0) 推荐(0)
摘要:规范化目录 为什么使用规范化目录 python的代码编写会很长,所以为了操作更方便,更容易查询修改 规范化目录的优点 加载快 ; 可读性高 ; 查询修改都简单 分析规范化目录 1.规划固定的路径 ​ 项目中的有关文件使用的操作有很多, 都是使用的相对路径,如果文件的路径改变了, 相应的所有文件使用的 阅读全文
posted @ 2019-08-01 08:05 边城bei 阅读(144) 评论(0) 推荐(0)