摘要:
一、线程锁 1.多个线程抢占资源的情况: 锁通常被用来实现对共享资源的同步访问。为每一个共享资源创建一个Lock对象,当你需要访问该资源时,调用acquire方法来获取锁对象(如果其它线程已经获得了该锁,则当前线程需等待其被释放),待资源访问完后,再调用release方法释放锁: 案例一: 案例二: 阅读全文
摘要:
1.threading模块 threading模块是众多多线程管理模块的其一,它能确保重要的子线程退出后进程才退出。 multiprocess模块的完全模仿了threading模块的接口,二者在使用层面,有很大的相似性,因而不再详细介绍 "(官方链接)" 2.创建线程的两种方式 方式一: 方式二: 阅读全文
摘要:
一、线程的引入概念: 进程有很多优点,它提供了多道编程,让我们感觉我们每个人都拥有自己的CPU和其他资源,可以提高计算机的利用率。很多人就不理解了,既然进程这么优秀,为什么还要线程呢?其实,仔细观察就会发现进程还是有很多缺陷的,主要体现在两点上: 进程只能在一个时间干一件事,如果想同时干两件事或多件 阅读全文
摘要:
一、ipc机制 进程通讯 管道:pipe 基于共享的内存空间 队列:pipe+锁 queue 下面拿代码来实现Queue如何使用: 案例一: 案例二: 案例三:(从这往下都是了解) 案例四: 案例五: 案例六: 二、生产者消费者模型: 在并发编程中使用生产者和消费者模式能够解决绝大多数并发问题。 阅读全文
摘要:
多进程操作 进程锁multiprocess.Lock的使用 通过之前的Process模块的学习,我们实现了并发编程,虽然更加充分地利用了IO资源,但是也有缺陷:当多个进程共用一份数据资源的时候,就会引发数据数据安全或者顺序混乱的问题。 如上问题,我们就引入了进程锁来维护执行顺序 以模拟抢 阅读全文
摘要:
一、类的继承 什么是继承? 继承是一种新建类的方式,新建的类称为子类,被继承的类称为父类 继承的特性是: 子类会遗传父类的属性 继承是类与类之间的关系 为什么要用继承? 可以减少代码的冗余 对象的继承: Python中支持一个类同时继承多个类 继承的应用: 阅读全文
摘要:
创建多进程之multiprocess包中的process模块 1.process模块是一个创建进程的模块 由该类实例化得到的对象,表示一个子进程中任务 强调 : 1. 需要使用关键字的方式来指定参数 2. args指定的为传给target函数的位置参数,是一个元组形式,必须有逗号 参数介绍 : gr 阅读全文
摘要:
操作系统 1. 串行: 一个程序完完整整的执行完再执行下一个 2. 并发: 看起来像是同时运行,其实就是程序间的切换频率比较快,看不出来 3. 并行:真正的同时运行 多道技术 1. 空间复用:共用一个内存条,多个进程相互隔离,物理级别隔离 2. 时间复用: 共用一个CPU 阻塞和非阻塞 程序运行的三 阅读全文
摘要:
一、面向对象与面向过程 1.面向过程: 优点:复杂问题流程化,简单化。 缺点:可扩展性差。 1.面向过程: 优点:可扩展性强 缺点:编程的复杂程度要高于面向过程 二、类和对象 对象:属性和方法的结合体 类: 一系列共同的属性和方法 显示生活中:先有对象再有类 程序中:先有类再有对象 阅读全文
摘要:
五,Python基础(2) 1.数据类型基础 (一)什么是数据类型? 用于区分变量值的不同类型。 (二)为何对数据分类? 针对不同状态就应该用不同类型的数据去标识。 (三)数据类型分类 1.数字类型 1.1整型(int) 1.11作用 表示人的年龄、各种号码、级别 1.12定义 1.13如何用 加减 阅读全文