爬蟲雜記

update:2017-9-1
每到deadline開發(fā)都十分有動力钢属,XD鬓长。

分布式模塊celery

Django后端

  • 遇到一個和循環(huán)引用相關的問題磷箕,類似下面的情況:
class B(object):
    def __init__(self, arg):
        self.arg = arg

class A(object):
    def __init__(self):
        self.b = B(self)

a = A()

不確定python的回收機制會不會處理這樣的情況,谷歌一番后找到了一個解決的方法哑子。
首先在overflow上看到這么一個回答

"Worry" is misplaced, but if your program turns out to be slow,consume more 
memory than expected, or have strange inexplicable pauses,the cause is 
indeed likely to be in those garbage reference loops -- they need to be 
garbage collected by a different procedure than "normal" (acyclic) reference 
graphs, and that collection is occasional and may be slow if you have a lot 
of objects tied up in such loops

大概的意思是對循環(huán)引用的回收不太靠譜?肌割?卧蜓?
然后看到了一個解決循環(huán)引用的方法,就是weakref這個包把敞。
使用起來很方便弥奸,import 這個包,然后在需要的位置加上weakref.ref
函數(shù)就好了奋早。
比如對上面函數(shù)的修改

class B(object):
    def __init__(self, arg):
        self.arg = weakref.ref(arg)

class A(object):
    def __init__(self):
        self.b = B(self)

a = A()

兩次運行打印A的對象就會發(fā)現(xiàn)不同盛霎。

第一次

without weakref

第二次

with weakref

最后,使用加了weakref的對象使用屬性的時候耽装,比如要用A的a屬性愤炸,要寫A().a的形式。

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
  • 序言:七十年代末剂邮,一起剝皮案震驚了整個濱河市摇幻,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌,老刑警劉巖绰姻,帶你破解...
    沈念sama閱讀 221,198評論 6 514
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件枉侧,死亡現(xiàn)場離奇詭異,居然都是意外死亡狂芋,警方通過查閱死者的電腦和手機榨馁,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,334評論 3 398
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來帜矾,“玉大人翼虫,你說我怎么就攤上這事÷庞” “怎么了珍剑?”我有些...
    開封第一講書人閱讀 167,643評論 0 360
  • 文/不壞的土叔 我叫張陵,是天一觀的道長死陆。 經(jīng)常有香客問我招拙,道長,這世上最難降的妖魔是什么措译? 我笑而不...
    開封第一講書人閱讀 59,495評論 1 296
  • 正文 為了忘掉前任别凤,我火速辦了婚禮,結果婚禮上领虹,老公的妹妹穿的比我還像新娘规哪。我一直安慰自己,他們只是感情好塌衰,可當我...
    茶點故事閱讀 68,502評論 6 397
  • 文/花漫 我一把揭開白布诉稍。 她就那樣靜靜地躺著,像睡著了一般猾蒂。 火紅的嫁衣襯著肌膚如雪均唉。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 52,156評論 1 308
  • 那天肚菠,我揣著相機與錄音舔箭,去河邊找鬼。 笑死蚊逢,一個胖子當著我的面吹牛层扶,可吹牛的內容都是我干的。 我是一名探鬼主播烙荷,決...
    沈念sama閱讀 40,743評論 3 421
  • 文/蒼蘭香墨 我猛地睜開眼镜会,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了终抽?” 一聲冷哼從身側響起戳表,我...
    開封第一講書人閱讀 39,659評論 0 276
  • 序言:老撾萬榮一對情侶失蹤桶至,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后匾旭,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體镣屹,經(jīng)...
    沈念sama閱讀 46,200評論 1 319
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 38,282評論 3 340
  • 正文 我和宋清朗相戀三年价涝,在試婚紗的時候發(fā)現(xiàn)自己被綠了女蜈。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 40,424評論 1 352
  • 序言:一個原本活蹦亂跳的男人離奇死亡色瘩,死狀恐怖伪窖,靈堂內的尸體忽然破棺而出,到底是詐尸還是另有隱情居兆,我是刑警寧澤覆山,帶...
    沈念sama閱讀 36,107評論 5 349
  • 正文 年R本政府宣布,位于F島的核電站史辙,受9級特大地震影響汹买,放射性物質發(fā)生泄漏。R本人自食惡果不足惜聊倔,卻給世界環(huán)境...
    茶點故事閱讀 41,789評論 3 333
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望生巡。 院中可真熱鬧耙蔑,春花似錦、人聲如沸孤荣。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,264評論 0 23
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽盐股。三九已至钱豁,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間疯汁,已是汗流浹背牲尺。 一陣腳步聲響...
    開封第一講書人閱讀 33,390評論 1 271
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留幌蚊,地道東北人谤碳。 一個月前我還...
    沈念sama閱讀 48,798評論 3 376
  • 正文 我出身青樓,卻偏偏與公主長得像溢豆,于是被迫代替她去往敵國和親蜒简。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 45,435評論 2 359

推薦閱讀更多精彩內容