linux命令
- man,cmd --help
- 多用
线程和进程
对比
- 进程是对运行时程序的封装,是系统资源调度和分配的基本单位
- 线程是进程的子任务,CPU调度和分配的基本单位,实现进程内并发
- 一个进程可以包含多个线程,线程依赖进程存在,并共享进程内存
线程安全
- 一个操作可以在多线程环境中安全使用,获取正确的结果
- 线程安全的操作好比线程是顺序执行而不是并发执行的(i+=1)
- 一般如果涉及到写操作需要考虑如何让多个线程安全访问数据
线程同步
进程间通信的方式
共享内存,信号量,套接字
Python中如何使用多线程
threading, start, join
Python中如何使用多进程
multiprocessing
内存管理
python的垃圾回收机制原理
- 引用技术为主(缺点:循环引用无法解决)
- 引入标记清除和分代回收解决引用计数的问题
- 引用计数为主+标记清除和分代回收为辅
引用计数:
a = None, del a, 离开对象的作用域等等,减少引用计数
getrefcount(a)
循环引用:两个对象互相引用之后引用计数无法归零
标记清除,从根对象找到所有可达的点,不可达的清除掉
分代回收,三代,每隔一段时间,分别对每一代进行标记回收
gc.get_threshold()
网友评论