上一页 1 ··· 5 6 7 8 9 10 11 12 下一页
摘要: 1.协程的概念 操作系统不可见的 协程本质就是一条线程,多个任务在一条线程上切换,来规避IO操作,就达到了我们将一条线程中IO操作降到最低的目标 2. 切换 并 规避 IO的两个模块 gevent 利用了greentlet (C语言) 底层模块完成切换 + 自动规避io的功能 asyncio 利用了 阅读全文
posted @ 2021-02-06 13:02 苦行僧冬*婷 阅读(37) 评论(0) 推荐(0)
摘要: 1.同一线程对一把锁连续acquire 死锁 2.多把锁(互斥锁,递归锁),并且在多个线程中 交叉使用 会死锁 如果是互斥锁,出现了死锁现象,最快速的解决方法就是把互斥锁变成一把递归锁 或者是把两把互斥锁变成一把互斥锁 互斥锁 效率低 但是会出现死锁现象 from threading import 阅读全文
posted @ 2021-02-04 22:31 苦行僧冬*婷 阅读(59) 评论(0) 推荐(0)
摘要: 1.+= -= *= /= if while会数据不安全 import dis a = 1 def func(): global a a += 1 print(dis.dis(func)) 上面函数通过dis模块查看底层指令如下 底层指令 108 0 LOAD_GLOBAL 0 (a) 把a加载到c 阅读全文
posted @ 2021-02-04 22:25 苦行僧冬*婷 阅读(58) 评论(0) 推荐(0)
摘要: 1. 线程可以利用多核,但是在cpython中 有GIL全局解释器锁,所以不能利用多核 2.线程enumerate函数 导入之后会和内置函数enumerate重名,需要做特殊的处理 1. 起别名 from threading import enumerate as en 2.导入 import th 阅读全文
posted @ 2021-02-04 21:59 苦行僧冬*婷 阅读(45) 评论(0) 推荐(0)
摘要: 单例模式 : 确保某个类只有一个实例化对象 import time class A: from threading import Lock __instance = None lock = Lock() def __new__(cls, *args, **kwargs): #加锁确保时间片不发生轮转 阅读全文
posted @ 2021-02-04 20:18 苦行僧冬*婷 阅读(55) 评论(0) 推荐(0)
摘要: 线程和进程的主要区别 1.线程数据共享,线程启动,关闭,切换特别快,大概是进程的10倍 gc 垃圾回收机制 引用计数 + 分带回收在cpython中 全局解释器是用来完成垃圾回收机制的,对不同线程引用计数的变化记录更加精确GIL(global interpreter lock) 导致了同一进程中的多 阅读全文
posted @ 2021-02-03 13:05 苦行僧冬*婷 阅读(71) 评论(0) 推荐(0)
摘要: from multiprocessing import Process,Queue import requests def consumer(q): while True: tup = q.get() if tup: name,res =tup with open('%s.html'%name,mo 阅读全文
posted @ 2021-02-03 12:52 苦行僧冬*婷 阅读(32) 评论(0) 推荐(0)
摘要: 1.进程通信 Inter Process Communication 可以通过文件通信 ,基于scoket通信 ,队列Queue 2.锁 : 解决在大量进程并发时数据不安全问题.买票的例子 import time import json from multiprocessing import Pro 阅读全文
posted @ 2021-02-03 12:25 苦行僧冬*婷 阅读(55) 评论(0) 推荐(0)
摘要: 多进程server端实现: import socket from multiprocessing import Process def func(conn): ''' 没调用一次func创建一个新进程 :param conn: :return: ''' try: #持续对话 while 1: dat 阅读全文
posted @ 2021-02-03 12:04 苦行僧冬*婷 阅读(46) 评论(0) 推荐(0)
摘要: 1.为什么要用 if __name__ == '__main__'2.能不能给子进程传参数3.能不能获取子进程的返回值4.能不能同时开启多个子进程5.jion的用法6.用面向对象开启一个进程(能否传参,属性) 1. 答:对于不同的操作系统而言不一样 windows系统 开启子进程相当于导入父进程的文 阅读全文
posted @ 2021-02-03 12:00 苦行僧冬*婷 阅读(77) 评论(0) 推荐(0)
上一页 1 ··· 5 6 7 8 9 10 11 12 下一页