随笔分类 - python就业班-02-系统编程
摘要:1.GIL 全局解释器锁:保证同一时刻只有一个线程在运行。 什么是全局解释器锁GIL(Global Interpreter Lock) Python代码的执行由Python 虚拟机(也叫解释器主循环,CPython版本)来控制,Python 在设计之初就考虑到要在解释器的主循环中,同时只有一个线程在
阅读全文
摘要:异步 同步调用就是你 喊 你朋友吃饭 ,你朋友在忙 ,你就一直在那等,等你朋友忙完了 ,你们一起去 (确定的) 异步调用就是你 喊 你朋友吃饭 ,你朋友说知道了 ,待会忙完去找你 ,你就去做别的了。(不确定什么时候去) 1)异步程序1:回调函数 2)异步2:执行回调函数
阅读全文
摘要:ThreadLocal 在多线程环境下,每个线程都有自己的数据。一个线程使用自己的局部变量比使用全局变量好,因为局部变量只有线程自己能看见,不会影响其他线程,而全局变量的修改必须加锁。 1. 使用函数传参的方法 但是局部变量也有问题,就是在函数调用的时候,传递起来很麻烦: 每个函数一层一层调用都这么
阅读全文
摘要:1. 生产者消费者模式的说明 1)为什么要使用生产者和消费者模式 在线程世界里,生产者就是生产数据的线程,消费者就是消费数据的线程。在多线程开发当中,如果生产者处理速度很快,而消费者处理速度很慢,那么生产者就必须等待消费者处理完,才能继续生产数据。 同样的道理,如果消费者的处理能力大于生产者,那么消
阅读全文
摘要:1.堵塞:是否等待 2. 什么是同步?按顺序执行 同步就是协同步调,按预定的先后次序进行运行。如:你说完,我再说。 3.同步:多个线程有序执行
阅读全文
摘要:1. 死锁 在线程间共享多个资源的时候,如果两个线程分别占有一部分资源并且同时等待对方的资源,就会造成死锁。 2. 避免死锁 程序设计时要尽量避免(银行家算法) 添加超时时间等 1)添加看门狗 、 2)银行家算法
阅读全文
摘要:1.g_num 不是全局变量 2.线程名 3.两个线程执行同一个函数 两个线程执行的函数没有关系 函数个人是个人的,函数里面的变量没有关系 小总结 在多线程开发中,全局变量是多个线程都共享的数据,而局部变量等是各自线程的,是非共享的
阅读全文
摘要:1. 添加flag 2.轮询:永无休止的进行flag判断 3.互斥锁 当多个线程几乎同时修改某一个共享数据的时候,需要进行同步控制 线程同步能够保证多个线程安全访问竞争资源,最简单的同步机制是引入互斥锁。 互斥锁为资源引入一个状态:锁定/非锁定。 threading模块中定义了Lock类,可以方便的
阅读全文
摘要:1.多线程-共享全局变量 进程之间不共享全局变量,所有出现了进程间通信 2.共享全局变量的缺点 1)两个线程同时对全局变量修改 2)等第一个线程+100000结束,才执行第二个线程 3)列表当做参数传入 总结: 在一个进程内的所有线程共享全局变量,能够在不适用其他方式的前提下完成多线程之间的数据共享
阅读全文
摘要:1.第1种方式:threading模块 1)单线程执行 2)多线程执行 主线程会等待所有的子线程结束后才结束 主线程会等待所有的子线程结束后才结束 2.线程和进程的区别联系 进程是资源分配的单位,资源,内存,屏幕,等 线程是cpu调度的单位 1个进程内有1个主线程,主线程可以创建多个子线程 主线程任
阅读全文
摘要:1.如何进行开发? 2.版本1:程序大框架 3.版本2:创建一个文件夹 1)ipython3 获取小知识点 2)写程序 3)测试程序 4)版本2:程序 4.版本3:获取old文件夹中的所有文件 1)获取知识点 2)写程序 3)测试 4)版本3:程序 5.版本4:模块化 6.版本5:多进程copy文件
阅读全文
摘要:1.进程间通信-Queue Process之间有时需要通信,操作系统提供了很多机制来实现进程间的通信。 说明 初始化Queue()对象时(例如:q=Queue()),若括号中没有指定最大可接收的消息数量,或数量为负值,那么就代表可接受的消息数量没有上限(直到内存的尽头); Queue.qsize()
阅读全文
摘要:1.multiprocessing模块 multiprocessing模块就是跨平台版本的多进程模块。 multiprocessing模块提供了一个Process类来代表一个进程对象, 2.Process语法结构: Process([group [, target [, name [, args [
阅读全文
摘要:# 注意,fork函数,只在Unix/Linux/Mac上运行,windows不可以 1.如下程序,来模拟“唱歌跳舞”这件事情 !!!注意 很显然刚刚的程序并没有完成唱歌和跳舞同时进行的要求 如果想要实现“唱歌跳舞”同时进行,那么就需要一个新的方法,叫做:多任务 2.进程的创建-fork 1.) 进
阅读全文
浙公网安备 33010602011771号