摘要:
同步互斥 线程间通信方法 1.通信方法:线程间使用全局变量进行通信 2.共享资源争夺 共享资源:多个进程或者线程都可以操作的资源称为共享资源。对共享资源的操作代码段称为临界区。 影响 : 对共享资源的无序操作可能会带来数据的混乱,或者操作错误。此时往往需要同步互斥机制协调操作顺序。 3.同步互斥机制 阅读全文
posted @ 2019-06-07 21:28
maplethefox
阅读(942)
评论(0)
推荐(0)
摘要:
自定义线程类 1.创建步骤【1】 继承Thread类【2】 重写__init__方法添加自己的属性,使用super加载父类属性【3】 重写run方法 2.使用方法【1】 实例化对象【2】 调用start自动执行run方法【3】 调用join回收线程 1 from threading import T 阅读全文
posted @ 2019-06-07 21:18
maplethefox
阅读(1222)
评论(0)
推荐(0)
摘要:
线程对象属性 t.name 线程名称 t.setName() 设置线程名称 t.getName() 获取线程名称 t.is_alive() 查看线程是否在生命周期 t.daemon 设置主线程和分支线程的退出关系 t.setDaemon() 设置daemon属性值 t.isDaemon() 查看da 阅读全文
posted @ 2019-06-07 21:15
maplethefox
阅读(486)
评论(0)
推荐(0)
摘要:
线程编程(Thread) 线程基本概念 1.什么是线程【1】 线程被称为轻量级的进程【2】 线程也可以使用计算机多核资源,是多任务编程方式【3】 线程是系统分配内核的最小单元【4】 线程可以理解为进程的分支任务 2.线程特征【1】 一个进程中可以包含多个线程【2】 线程也是一个运行行为,消耗计算机资 阅读全文
posted @ 2019-06-07 21:12
maplethefox
阅读(351)
评论(0)
推荐(0)
摘要:
进程间通信(IPC) 1.必要性: 进程间空间独立,资源不共享,此时在需要进程间数据传输时就需要特定的手段进行数据通信。 2.常用进程间通信方法:管道通信、消息队列、共享内存、信号量 管道通信(Pipe) 1.通信原理:在内存中开辟管道空间,生成管道操作对象,多个进程使用同一个管道对象进行读写即可实 阅读全文
posted @ 2019-06-07 21:06
maplethefox
阅读(3860)
评论(0)
推荐(1)
摘要:
进程池实现 1.必要性【1】 进程的创建和销毁过程消耗的资源较多【2】 当任务量众多,每个任务在很短时间内完成时,需要频繁的创建和销毁进程。此时对计算机压力较大【3】 进程池技术很好的解决了以上问题。 2.原理 创建一定数量的进程来处理事件,事件处理完进 程不退出而是继续处理其他事件,直到所有事件全 阅读全文
posted @ 2019-06-07 20:49
maplethefox
阅读(531)
评论(0)
推荐(0)
摘要:
multiprocessing 模块创建进程 进程创建方法 1.流程特点【1】 将需要子进程执行的事件封装为函数【2】 通过模块的Process类创建进程对象,关联函数【3】 可以通过进程对象设置进程信息及属性【4】 通过进程对象调用start启动进程【5】 通过进程对象调用join回收进程 2.基 阅读全文
posted @ 2019-06-07 20:44
maplethefox
阅读(534)
评论(0)
推荐(0)
摘要:
基于fork的多进程编程 fork使用 pid = os.fork()功能: 创建新的进程返回值:整数,如果创建进程失败返回一个负数,如果成功则在原有进程中返回新进程的PID,在新进程中返回0 注意: 子进程会复制父进程全部内存空间,从fork下一句开始执行。 父子进程各自独立运行,运行顺序不一定。 阅读全文
posted @ 2019-06-07 20:34
maplethefox
阅读(2410)
评论(0)
推荐(0)
摘要:
多任务编程 1.意义: 充分利用计算机多核资源,提高程序的运行效率。 2.实现方案 :多进程 , 多线程 3.并行与并发 并发 : 同时处理多个任务,内核在任务间不断的切换达到好像多个任务被同时执行的效果,实际每个时刻只有一个任务占有内核。 并行 : 多个任务利用计算机多核资源在同时执行,此时多个任 阅读全文
posted @ 2019-06-07 20:09
maplethefox
阅读(344)
评论(0)
推荐(0)
摘要:
struct模块的使用 1.原理: 将一组简单数据进行打包,转换为bytes格式发送。或者将一组bytes格式数据,进行解析。 2.接口使用 Struct(fmt) 功能: 生成结构化对象 参数:fmt 定制的数据结构 st.pack(v1,v2,v3....) 功能: 将一组数据按照指定格式打包转 阅读全文
posted @ 2019-06-07 19:56
maplethefox
阅读(904)
评论(0)
推荐(0)

浙公网安备 33010602011771号