zoukankan      html  css  js  c++  java
  • 5月28号 垃圾回收机制

     1、垃圾回收機制詳解(了解)
    # 垃圾回收机制原理分析
    # Python的GC版块主要运用了“引用计数”来跟踪和回收垃圾。在引用计数的基础上,还可以通过“标记-清除”解决容器对象可能产生
    # 的循环引用的问题,并且通过“分代回收”以空间换取时间的方式来进一步提高垃圾回收的效率。

    # 引用计数
    # x = 10
    # print(id(x)) # 直接引用
    # y = x
    # z = x

    # l = ['a','b' x] # 间接引用
    # print(id(l[1])) #
    #
    # d={'mmm':x} #间接引用
    # print(id(d['mmm'])) #间接引用



    # x = 10
    # # l = ['a','b', x] #['a'的内存地址,'b'的内存地址,'10的内存地址']
    #
    # x=123
    # print(l[2]) # 对应的是10的内存地址



    # 栈区:存放的是变量名与内存地址的对应关系,可以简单的理解为:变量名存内存地址
    # 堆区:存放的是变量值
    # 强调:只站在变量的名的角度去谈一件事情
    # 变量名的赋值(x=y),还有变量名的传参(print(x)),传递的都是栈区的数据,而且栈的数据是
    # 变量名与内存地址的对应关系,或者说是对值的引用

    # Python是引用传递

    # 示列1:
    # x=10
    # y=20
    # x=y
    # 示列2:
    # l=[111,222,333]
    # l1=[2222222,6666666,444444]
    #
    # l2=l
    # 直接引用是指从栈区出发直接引用到内存地址
    # 间接引用指的是从栈区出发引用到堆区后,再进一步引用才能到达的内存地址



    # 标记清除
    # 通俗的讲就是:栈区相当于“根”,凡是从根出发可以访达(直接引用或间接引用)的,都称之为“有根之人”,有根活,无根死。
    # 分代回收

    #
  • 相关阅读:
    .net 中ifram的session过期,跳转到登录页面
    新建物料组!
    WCF学习系列(1)
    WCF学习系列(4)————数据协定
    AX中操作Excel
    WCF学习系列(3)————承载
    简单的库存模型组
    博弈_ZOJ3591_序列中子序列异或值大于0.cpp
    zoj2527_求最长等差数列
    第二次周日赛
  • 原文地址:https://www.cnblogs.com/ltyc/p/12984703.html
Copyright © 2011-2022 走看看