随笔分类 -  并发编程出门到乞丐篇

摘要:[TOC] 第十五章、线程之协程 一、协程与线程和进程的区别 协助程序,线程和进程都是抢占式特点,线程和进程的切换我们是不能参与的。 而协程是非抢占式特点,协程也存在着切换,这种切换是由我们用户来控制的。 二、gevent模块 说明 :gevent模块中自带了sleep耗时函数,当使用这个耗时函数时 阅读全文
posted @ 2019-09-20 14:51 得淼 阅读(122) 评论(0) 推荐(0)
摘要:[TOC] 第十五章、线程池和进程池 一、线程计时器 二、异步同步 三、线程池和进程池 使用模块方法 代码例子(新增回调函数知识点(对象.add_done_callback(parse))) 阅读全文
posted @ 2019-09-19 22:59 得淼 阅读(129) 评论(0) 推荐(0)
摘要:[TOC] 第十五章、线程之queue模块的各种队列 一、Queue 二、LifoQueue堆栈 三、PriorityQueue优先级队列 阅读全文
posted @ 2019-09-19 15:46 得淼 阅读(164) 评论(0) 推荐(0)
摘要:[TOC] 第十五章、Python多线程之信号量和GIL 1. 信号量(Semaphore) 信号量用来控制线程并发数的,Semaphore管理一个内置的计数 器,每当调用acquire()时 1,调用release()时+1。计数器不能小于0,当计数器为 0时,acquire()将阻塞线程至同步锁 阅读全文
posted @ 2019-09-18 21:27 得淼 阅读(315) 评论(0) 推荐(0)
摘要:[TOC] 第十五章、Python多线程同步锁,死锁和递归锁 1. 引子: ​ 以上就是python多线程的基本使用 ​ 说明:前面说的两个功能是相互独立的,相互不干涉的,不会用到同享的资源或者数据,如果我们多个线程要用到相同的数据,那么就会存在资源争用和锁的问题,不管在什么语言中,这个都是不能避免 阅读全文
posted @ 2019-09-18 17:25 得淼 阅读(577) 评论(0) 推荐(0)
摘要:第十五章、并发编程之守护线程 # 守护线程 守护的是非守护线程(主线程也是非守护线程) from threading import Thread,enumerate,currentThread import time def task(): print('守护线程开始') print(current 阅读全文
posted @ 2019-09-17 20:00 得淼 阅读(132) 评论(0) 推荐(0)
摘要:[TOC] 第十五章、并发编程之线程 1.什么是线程 纠正概念: 进程其实不是个执行单位,进程是一个资源单位, 每个进程内自带一个线程,线程才是cpu上的执行单位 抽象理解: 进程是指在系统中正在运行的一个应用程序;线程是系统分配处理器时间资源的基本单元,或者说进程之内独立执行的一个单元。对于操作系 阅读全文
posted @ 2019-09-17 18:30 得淼 阅读(167) 评论(0) 推荐(0)
摘要:[TOC] 抢票小程序 version1(并发) 于是进行加锁处理 version2(加锁处理) 思考: 总结: 阅读全文
posted @ 2019-09-16 21:31 得淼 阅读(611) 评论(0) 推荐(0)
摘要:[TOC] 一、队列 ​ 进程彼此之间互相隔离,要实现进程间通信(IPC),multiprocessing模块支持两种形式:队列和管道,这两种方式都是使用消息传递的 创建队列的类(底层就是以管道和锁定的方式实现) : 方法介绍 二、消费者生产者模型 什么是生产者消费者模式 ​ 生产者消费者模式是通过 阅读全文
posted @ 2019-09-16 17:14 得淼 阅读(485) 评论(0) 推荐(0)
摘要:[TOC] 第十五章、python中的进程操作 开启多进程 一、multprocess模块 multiprocess不是一个模块而是python中一个操作、管理进程的包。 在这个包中几乎包含了和进程有关的所有子模块,将这部分大致分为四个部分:创建进程部分,进程同步部分,进程池部分,进程之间数据共享。 阅读全文
posted @ 2019-09-14 16:21 得淼 阅读(303) 评论(0) 推荐(0)
摘要:[TOC] 串行、并发、并行的区别以及坑 阅读全文
posted @ 2019-09-11 20:14 得淼 阅读(2861) 评论(2) 推荐(0)
摘要:[TOC] 开启子进程的方式 一:方式一 二、 方式二 阅读全文
posted @ 2019-09-11 20:11 得淼 阅读(186) 评论(0) 推荐(0)