摘要:
死锁现象与递归锁 1. 死锁: 是指两个或两个以上的进程或线程在执行过程中,因为争夺资源而造成的一种互相等待的现象,若无外力作用,他们都将无法推进下去,此时系统处于死锁状态或系统产生了死锁,这些永远在等待的进程称为死锁进程 2. 递归锁 1. 解决死锁现象的方法:就是递归锁 2. 同一把锁,引用一次 阅读全文
摘要:
线程 1,生产者消费者模型 1. 什么是生产者与消费者模型 生产者消费者模式是通过一个容器来解决生产者和消费者的强耦合问题,生产者和消费者之间不直接通讯,而通过阻塞队列来通讯,阻塞队列就相当于一个缓冲区,平衡了生产者和消费者的处理能力 在并发编程中使用生产者和消费者模式能够解决大多数并发问题,该模式 阅读全文
摘要:
互斥锁 锁:from multiprocessing import Lock,Lock即为锁 lock与join的区别 共同点:都可以把并发变成串行,保证了顺序 不同点:join人为设定顺序,lock让其争抢顺序,保证了公平性 进程之间的通信 1,基于文件通信 效率低 应用到了互斥锁:可以公平性的保 阅读全文
摘要:
多进程 1, multiprocessing模块介绍 multiprocessing模块用来开启子进程,并在子进程中执行我们定制的任务(比如函数),该模块与多线程模块threading的编程接口类似。 multiprocessing模块的功能众多:支持子进程、通信和共享数据、执行不同形式的同步,提供 阅读全文
摘要:
进程 1,进程的基础 1. 程序 一堆静态的代码文件 2. 进程 一个正在运行的程序进程,抽象的概念 由操作系统操控调用与CPU运行 3. 操作系统 1. 管理控制协调计算机中硬件与软件的关系 2. 作用 1. 将一些对硬件操作的复杂丑陋的接口,变成简单美丽的接口 2. 多个进程抢占一个CPU时资源 阅读全文
摘要:
socket 1,定义 1. 套接字 1. 基于tcp协议 2. socket是基于应用层与传输层之间的抽象层,是一组操作起来非常简单的接口,接收应用层的数据,然后传给操作系统 2. 分类: 1. 基于文件类型的套接字家族:AF UNIX,不常用 2. 基于网络类型的套接字家族:AF INET 3. 阅读全文
摘要:
网络协议 1,七五协议 1. 应用层(表示层,会话层) 1. FTP协议:文件传输协议,工作TCP\IP模型的应用层,基于TCP的传输协议,面向连接的流式协议,提供可靠的数据传输 2. 规定应用程序的数据格式 2. 传输层 1. 端口协议:建立端口到端口的通行 2. TCP协议:面向链接的流式协议, 阅读全文
摘要:
双下方法 1. 定义: 1. 双下方法是特殊方法 2. 原来是Python这个语言的程序员用于源码使用的 3. 一种特殊的机制:你不知道你干了什么就触发了某个双下方法 2. __len__ 1. 3. __hash__ 1. 类的实例化对象也是可哈希的 2. 可哈希对象得到哈希值 1. 4. _st 阅读全文
摘要:
规范目录 1,配置starts文件 配置启动文件:将项目的启动执行命令放置在starts.py文件中,运行starts.py文件就可以成功启动项目 bin\starts.py 2,配置settings文件 配置文件中,放置一些项目中需要的静态参数,比如文件路径,数据库配置,软件的默认设置等等,在这里 阅读全文
摘要:
re模块 1,正则表达式 | | | | : | : | | \w | 匹配字母(包含中文)或数字或下划线 | | \W | 匹配非字母(包含中文)或数字或下划线 | | \s | 匹配任意的空白符(换行符,制表符,) | | \S | 匹配任意非空白符 | | \d | 匹配数字 | | \D | 阅读全文