欧美三区_成人在线免费观看视频_欧美极品少妇xxxxⅹ免费视频_a级毛片免费播放_鲁一鲁中文字幕久久_亚洲一级特黄

Python內存管理實例分析

系統 1888 0

本文實例講述了Python內存管理。分享給大家供大家參考,具體如下:

            
a = 1


          

a是引用,1是對象。Python緩存整數和短字符串,對象只有一份,但長字符串和其他對象(列表字典)則有很多對象(賦值語句創建新的對象)。

            
from sys import getrefcount
a=[1,2,3]
print(getfrecount(a))


          

返回4,當使用某個引用作為參數傳給getfrecount時,創建了臨時引用,+1.

對象引用對象

            
class from_obj(object):
  def __init__(self, to_obj):
    self.to_obj = to_obj
b = [1,2,3]
a = from_obj(b)
print(id(a.to_obj))
print(id(b))
c = [b,b]


          

a引用對象b,c引用b兩次。

通過objgraph包(之前安裝xdot)梳理引用拓撲結構。

            
x = [1, 2, 3]
y = [x, dict(key1=x)]
z = [y, (x, y)]
import objgraph
objgraph.show_refs([z], filename='ref_topo.png')


          

Python內存管理實例分析_第1張圖片

千萬不要兩個對象相互引用或自己引用自己,形成引用環給垃圾回收機制帶來麻煩。

垃圾回收

回收引用計數為0的對象。垃圾回收時python不能做其他任務,降低效率,所以不是總隨時都垃圾回收。python記錄分配對象(object allocation)和取消分配對象(object deallocation),差值高于某閾值啟動回收。

            
import gc
print(gc.get_threshold())

          

(700,10,10)700為啟動閾值,兩個10是分代回收相關閾值,通過 set_threshold() 重設。手動啟用垃圾回收 gc.collect()

分代回收

基本假設:存活越久越不可能變垃圾。

對象分0,1,2三代。新建對象0代,經過一次垃圾回收依然存活歸為下一代。垃圾回收啟動時一定掃描所有0代,如果0代經過一定次數垃圾回收,則掃0和1代,同理掃0,1和2代。(700,10,10)表明10次0代配合1次1代,10次1代配合1次2代。

孤立的引用環

Python內存管理實例分析_第2張圖片

原本兩表對象相互引用后刪除引用,但對象引用計數部位0不會被回收。

則python復制每個對象引用計數,對某個對象i,遍歷所有對象i引用的對象j,將gc_ref_j減1.

更多關于Python相關內容感興趣的讀者可查看本站專題:《Python進程與線程操作技巧總結》、《Python數據結構與算法教程》、《Python函數使用技巧總結》、《Python字符串操作技巧匯總》、《Python入門與進階經典教程》及《Python文件與目錄操作技巧匯總》

希望本文所述對大家Python程序設計有所幫助。


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 亚洲一区国产 | 99久久婷婷 | 国产成人精品一区二区三区四区 | 天天摸天天操免费播放小视频 | 网红和老师啪啪对白清晰 | 日日操免费视频 | 欧美精品人爱a欧美精品 | 国产一区久久 | 精品久久一区二区三区 | 一级女性大黄生活片免费 | 欧美ol丝袜高跟秘书在线播放 | 一本色道久久88加勒比—综合 | 中文乱码一二三四有限公司 | 天天爱天天做久久天天狠狼 | 欧美亚洲另类在线 | 精品综合网 | av黄色在线 | 国产成人精品日本亚洲11 | 777色狠狠一区二区三区香蕉 | 国产香蕉视频在线 | 大伊香蕉精品视频在线天堂 | 人人狠狠综合88综合久久 | 成人国内精品久久久久影院 | 一级视频在线播放 | 免费国产一区二区 | 中文字幕在线二区 | 成人国产一区二区三区 | 免费看在线偷拍视频 | 久久草视频这里只精品99 | 热re66久久精品国产99re | 四虎国产成人免费观看 | 免费xxxx日本大片在线观看 | 免费看黄在线网站 | 亚洲国产午夜电影在线入口 | 国产精品久久久久久日本 | 99成人| 欧美一级成人免费大片 | 天堂成人在线 | 成人午夜亚洲影视在线观看 | 爽爽影院在线看 | 特级全黄一级毛片免费 |