摘要: 一 生产者消费者模型介绍 为什么要使用生产者消费者模型 生产者指的是生产数据的任务,消费者指的是处理数据的任务,在并发编程中,如果生产者处理速度很快,而消费者处理速度很慢,那么生产者就必须等待消费者处理完,才能继续生产数据。同样的道理,如果消费者的处理能力大于生产者,那么消费者就必须等待生产者。为了 阅读全文
posted @ 2018-03-05 23:00 Love_always_online 阅读(180) 评论(0) 推荐(0) 编辑
摘要: 队列介绍 进程彼此之间互相隔离,要实现进程间通信(IPC),multiprocessing模块支持两种形式:队列和管道,这两种方式都是使用消息传递的 创建队列的类(底层就是以管道和锁定的方式实现): 参数介绍: 主要方法介绍: 阅读全文
posted @ 2018-03-05 22:17 Love_always_online 阅读(135) 评论(0) 推荐(0) 编辑
摘要: 一 互斥锁 进程之间数据不共享,但是共享同一套文件系统,所以访问同一个文件,或同一个打印终端,是没有问题的,而共享带来的是竞争,竞争带来的结果就是错乱,如下 结果是: 如何控制,就是加锁处理。而互斥锁的意思就是互相排斥,如果把多个进程比喻为多个人,互斥锁的工作原理就是多个人都要去争抢同一个资源:卫生 阅读全文
posted @ 2018-03-05 21:29 Love_always_online 阅读(252) 评论(0) 推荐(0) 编辑
摘要: 一 守护进程 主进程创建子进程,然后将该进程设置成守护自己的进程。 关于守护进程需要强调两点: 其一:守护进程会在主进程代码执行结束后就终止 其二:守护进程内无法再开启子进程,否则抛出异常:AssertionError: daemonic processes are not allowed to h 阅读全文
posted @ 2018-03-05 21:22 Love_always_online 阅读(130) 评论(0) 推荐(0) 编辑
摘要: 一 Process对象的join方法 在主进程运行过程中如果想并发地执行其他的任务,我们可以开启子进程,此时主进程的任务与子进程的任务分两种情况 情况一:在主进程的任务与子进程的任务彼此独立的情况下,主进程的任务先执行完毕后,主进程还需要等待子进程执行完毕,然后统一回收资源。 情况二:如果主进程的任 阅读全文
posted @ 2018-03-05 21:15 Love_always_online 阅读(154) 评论(0) 推荐(0) 编辑
摘要: 一 multiprocessing模块介绍 python中的多线程无法利用多核优势,如果想要充分地使用多核CPU的资源(os.cpu\_count\(\)查看),在python中大部分情况需要使用多进程。 Python提供了multiprocessing。 multiprocessing模块用来开启 阅读全文
posted @ 2018-03-05 21:13 Love_always_online 阅读(255) 评论(0) 推荐(0) 编辑
摘要: 一 什么是进程 进程:正在进行的一个过程或者说一个任务。而负责执行任务则是cpu。 二 进程与程序的区别 程序仅仅只是一堆代码而已,而进程指的是程序的运行过程。 举例: 我在家做韭菜炒鸡蛋,我有做韭菜炒鸡蛋食谱,厨房里有所需的原料:鸡蛋、韭菜,蒜泥,大葱,生姜等。 1. 韭菜炒鸡蛋食谱就是程序。 2 阅读全文
posted @ 2018-03-05 21:09 Love_always_online 阅读(109) 评论(0) 推荐(0) 编辑
摘要: 开始之前要知道Python类中两个概念:字段和方法 “字段”和“方法”都有“动态”和“静态”之分,即: 字段- 静态字段- 动态字段 方法- 静态方法- 动态方法 字段- 静态字段- 动态字段 方法- 静态方法- 动态方法 以下事例标明了:“静态字段”,“动态字段”以及“动态方法”是什么样子的,因为 阅读全文
posted @ 2018-03-05 10:30 Love_always_online 阅读(138) 评论(0) 推荐(0) 编辑