- 博客(5)
- 收藏
- 关注
原创 多线程,多进程和协程
多进程主要适用于cpu密集型的任务,多进程的开启是有上限的,根据cpu的决定开启上限多线程由于GIL的存在同一时刻只有一个线程能够使用cpu,所以不适用于cpu密集型任务,不过可以使用IO密集型任务,多线程还是遵循io并发任务原则异步io单线程利用cpu和io同步执行的原理,实现了函数异步执行线程占用内存资源,并且线程切换的开销比较大,这些开销协程是没有的。
2023-11-18 22:42:44
85
1
原创 GIL 全局解释器锁
原因1: python是动态类型语言,边解释边执行,c,c++ 开发完之后需要编译,编译之后就是机器可以直接执行的机械码,所以速度非常快。而python执行的时候就是源码,就存在一个从源码到机械码翻译的过程,这个过程是边解释边执行的,所以就会导致他的速度非常慢。对于c++ 和 java来说,如果开启了多线程,多线程会同时执行,如果使用了多核,会在多核上同时执行。因为是动态类型,一个变量的类型随时有可能会变,所以python需要随时检查类型,会导致速度非常的慢。python速度慢的两大原因?
2023-11-18 22:29:29
59
1
原创 docker(1) 基础命令
container的基本操作,大部分都可以吧container省略掉,直接使用后面的操作, 建议使用完整的命令,这样比较清晰的知道是在对谁操作。容器内部看到的进程id实际上与linux的进程id是不一样的, 虽然这里查看是一样的,这个涉及到容器的命名空间的隔离映射, 后面填坑!attached: 会把容器输入输出的结果attached到本地的输入输出上去, 本地的输入输出也会直接反映到nginx的容器内部。此时会进入一个shell, 这个shell就是当前所创建容器的shell , 处在一个交互式的模式。
2023-11-14 16:40:41
68
1
原创 window安装anyproxy报错
思路:找出anyproxy安装所在路径,检查配置类的东西是否有需要修改的是否可以手动安装anyproxy实践全局安装npm所在的路径C:\Users\username\AppData\Roaming\npm\node_modules找到anyproxy文件,全部删除,重新安装(防止是之前安装的过程错误,重新测试一遍)cnpm install anyproxy -g 安装 和之前报同样的错C:\Users\username.anyproxy\certificates 中找到 .
2020-08-12 16:38:52
660
转载 ubuntu上运行selenium爬虫记录
1.按照此篇文章安装 https://blog.youkuaiyun.com/shuchuan0409/article/details/101615221谷歌各种版本 https://www.slimjet.com/chrome/google-chrome-old-version.phpcharme镜像 http://npm.taobao.org/mirrors爬虫 Selenium Chromium与Chromedriver对应版本https://blog.youkuaiyun.com/doujiang_zheng/a
2020-08-07 11:35:38
338
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人