015-Python提高01-GIL拷贝私有
Posted hhj-study-10years
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了015-Python提高01-GIL拷贝私有相关的知识,希望对你有一定的参考价值。
1 GIL(全局解释器锁) :
2 范围 : 只在多线程(一个进程)中才会出现 GIL
3 作用 : 保证同一时刻只有一个线程被 Python 解释器执行
4 原理 : 线程 A 抢到 GIL 后,对 GIL 上锁。只有抢到 GIL 的线程才能执行。
5 GIL 何时会被释放?
6 回答 : ① 当线程阻塞时
7 ② 当达到 GIL 内的计数器的值时
8
9 ??拷贝 :
10 拷贝和引用的区别 :
11 引用 : 地址相同
12 拷贝 : 地址不同
13 ??讨论拷贝时,要结合可变类型、不可变类型。尤其是浅拷贝(从整体思考["cyan",[3,4]])
14 不可变类型(数字,字符串,元组(元素都是原子型数据))没有拷贝的说法,深浅拷贝都是引用
15 深拷贝 : 递归拷贝值(复制原来的值,复制就意味着开辟了新的内存)。
16
17
18 浅拷贝 : 浅拷贝拷贝的内容是原对象最外层内容的引用
19
20
21
22
23
24
25
26
27
28 Python 中哪些方法是浅拷贝?
29 回答 : 切片、工厂函数(list(),tuple(),str(),float()…)、copy.copy()
30
31 模块导入 :
32 _name : 不能被 from xxx import * 导入(其他方式可以)
33 __name : 通常只能在类内部访问,但是可以通过 对象._类名__name 访问
以上是关于015-Python提高01-GIL拷贝私有的主要内容,如果未能解决你的问题,请参考以下文章
Android 插件化VirtualApp 安装并启动资源中自带的 APK 插件 ( 添加依赖库 | 准备插件 APK | 启动插件引擎 | 拷贝 APK 插件 | 安装插件 | 启动插件 )(代码片
Android 插件化VirtualApp 安装并启动资源中自带的 APK 插件 ( 添加依赖库 | 准备插件 APK | 启动插件引擎 | 拷贝 APK 插件 | 安装插件 | 启动插件 )(代码片
Android 逆向修改运行中的 Android 进程的内存数据 ( 运行环境搭建 Android 模拟器安装 | 拷贝 Android 平台可执行文件和动态库到 /data/system )(代码片