内存管理

Posted huangdong-

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了内存管理相关的知识,希望对你有一定的参考价值。

# Cpython解释器的垃圾回收机制
# 什么是垃圾:当一个值身上没有人绑定任何变量名(该值的引用计算=0)时,该值就是一个垃圾

#引用计算增加
# age=18 #18的引用计数等于1
# x=age #18的引用计数等于2
# print(age)
# print(x)

#引用计数减少
# age=19 #18的引用计数等于1
# print(age)

# del x #18的引用计数等于0
#解除引用

#2.变量值的三个特征:
# id:反应的是内存地址
# type:数据类型
# 值
# age=18
# print(id(age))
# print(type(age))
# print(age)

# 总结:
# 2.1. id相同,值一定相同
# 2.2. 值相同,id可以不用
# ‘‘‘
# >>> x=‘name:egon age:18***‘
# >>> y=‘name:egon age:18***‘
# >>> id(x)
# 2847698422856
# >>> id(y)
# 2847698422928
# ‘‘‘

# 在pycharm中, id一样
# x=11111111111111111111111111231231231231222222222222
# y=11111111111111111111111111231231231231222222222222
#
# print(id(x))
# print(id(y))

# 3. is 与 ==
# == :值是否相等
# is:id是否相等
#
# 4. 可变类型与不可变类型
#4. 可变类型与不可变类型
# 可变类型: 值改变,id不变,证明就是在改变原值
# 不可变类型:值改变,id也变,证明根本不是在改变原值,是创建了新值,原值就是不可变类型
# x=10
# print(id(x))
# x=11
# print(id(x))


l=[‘a‘,‘b‘,‘c‘]
print(id(l))
l[0]=‘A‘
print(id(l))
# print(l)






























































以上是关于内存管理的主要内容,如果未能解决你的问题,请参考以下文章

ION 内存管理

:内存管理 -- 内存管理的概念

Spark内存管理详解(下)——内存管理

RT-Thread--内存管理

内存管理 浅析 内存管理/内存优化技巧

内存管理相关API列表