04 2018 档案
摘要:1、阻塞与非阻塞指的是程序的两种运行状态: 阻塞:遇到I/O,程序停在原地,并立即释放CPU资源 非阻塞(就绪态或运行态):没有遇到I/O,或者通过某种手段让程序即便是遇到I/O也不会停原地,力求尽可能多占用CPU资源 2、同步与异步指的是提交任务的两种方式: 同步调用:提交完任务后,就在原地等待,
阅读全文
摘要:前言: 进程,线程傻傻分不清 开启线程 两种方式 1 # 方式一: 2 # def task(name): 3 # print('%s is running' % name) 4 # time.sleep(3) 5 # 6 # if __name__ == '__main__': 7 # t = T
阅读全文
摘要:阅读目录 知识储备 互斥锁 进程间通信IPC 队列 生成者消费者模型 知识储备 进程: 进程就是一个正在执行的过程,或者说一个软件的运行过程 进程是一个虚拟的概念 进程的概念起源:操作系统 操作系统发展史 批处理操作系统:(串行) 把程序员的程序攒成一堆 然后批处理系统读一道程序到内存然后执行 执行
阅读全文
摘要:知识储备 c/s和b/s架构 物理层 数据链路层 网络层 传输层 应用层 TCP/UDP 套接字 粘包问题 UDP协议通信 进程 C/S和B/S架构 1 # C/S架构 2 client< >server 3 # B/S架构 4 browser< >server 物理层: 物理层功能:主要是基于电器
阅读全文
摘要:知识储备 1、什么是异常 异常是错误发生的信号 程序一旦出错,如果程序中还没有相应的处理机制,那么该错误就会产生一个异常抛出,程序的运行也随之中止。 try 和 if 的区别: if:是可预知的错误或异常场景。 try:是不可预知的异常场景,且异常已发生做出的应对手段。 分支判断: 1 try: 2
阅读全文
摘要:引子 至少会用三种方式创建。 1 # 方式一:定义一个类方法实现单例模式 2 import setting 3 4 class Mysql: 5 instance = None 6 def __init__(self,host,port): 7 self.host = host 8 self.por
阅读全文
摘要:知识储备 注意:调用对象,则会自动将对象所在类的下的绑定方法__call__的执行,然后将对象本身当作第一个参数传给self,将调用对象时括号内的值传给*args与**kwargs。 正题: 类的类是元类(默认type),元类内也必定有__call__方法,用来在调用元类生成类的时候。 当一个类指定
阅读全文