成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

.NET 強(qiáng)引用與弱引用

開(kāi)發(fā)
如果應(yīng)用程序的代碼可以訪問(wèn)一個(gè)正由該程序使用的對(duì)象,垃圾回收器就不能收集該對(duì)象, 那么,就認(rèn)為應(yīng)用程序?qū)υ搶?duì)象具有強(qiáng)引用。
  • 強(qiáng)引用

如果應(yīng)用程序的代碼可以訪問(wèn)一個(gè)正由該程序使用的對(duì)象,垃圾回收器就不能收集該對(duì)象, 那么,就認(rèn)為應(yīng)用程序?qū)υ搶?duì)象具有強(qiáng)引用。

要建立強(qiáng)引用并重新使用該對(duì)象,請(qǐng)將 WeakReference 的 Target 屬性強(qiáng)制轉(zhuǎn)換為該對(duì)象的類(lèi)型。如果 Target 屬性返回 null,則表示對(duì)象已被收集;否則,您可繼續(xù)使用該對(duì)象,因?yàn)閼?yīng)用程序已重新獲得了對(duì)它的強(qiáng)引用。

  • 弱引用

弱引用允許應(yīng)用程序訪問(wèn)對(duì)象,同時(shí)也允許垃圾回收器收集相應(yīng)的對(duì)象。如果不存在強(qiáng)引用,則弱引用的有限期只限于收集對(duì)象前的一個(gè)不確定的時(shí)間段。
使用弱引用時(shí),應(yīng)用程序仍可對(duì)該對(duì)象進(jìn)行強(qiáng)引用,這樣做可防止該對(duì)象被收集。但始終存在這樣的風(fēng)險(xiǎn):垃圾回收器在重新建立強(qiáng)引用之前先處理該對(duì)象。
要對(duì)某個(gè)對(duì)象建立弱引用,請(qǐng)使用要跟蹤的對(duì)象的實(shí)例創(chuàng)建一個(gè) WeakReference。 然后將 Target 屬性設(shè)置為該對(duì)象,將該對(duì)象設(shè)置為 null。

  • 適合弱引用的對(duì)象
    • 占用大量?jī)?nèi)存,但通過(guò)垃圾回收功能回收以后很容易重新創(chuàng)建。
  • 弱引用分類(lèi)
    • Short  垃圾回收功能回收對(duì)象后,短弱引用的目標(biāo)會(huì)變?yōu)?null。弱引用本身是托管對(duì)象,和任何其他托管對(duì)象一樣需要經(jīng)過(guò)垃圾回收。短弱引用是 WeakReference 的默認(rèn)構(gòu)造函數(shù)。
    • Long

調(diào)用對(duì)象的 Finalize 方法后,會(huì)保留長(zhǎng)弱引用。這樣,您就可以重新創(chuàng)建該對(duì)象,但該對(duì)象仍保持不可預(yù)知的狀態(tài)。要使用長(zhǎng)引用,請(qǐng)?jiān)?WeakReference 構(gòu)造函數(shù)中指定 true。如果對(duì)象的類(lèi)型沒(méi)有 Finalize 方法,則會(huì)應(yīng)用短弱引用功能,該弱引用只在目標(biāo)被收集之前有效,運(yùn)行終結(jié)器之后可以隨時(shí)收集目標(biāo)。

  • 弱引用使用準(zhǔn)則
    • 僅在必要時(shí)使用長(zhǎng)弱引用,因?yàn)樵诮K止后對(duì)象的狀態(tài)是不可預(yù)知的
    • 避免對(duì)小對(duì)象使用弱引用,因?yàn)橹羔槺旧砜赡芎蛯?duì)象一樣大,或者比對(duì)象還大
    • 不應(yīng)將弱引用作為內(nèi)存管理問(wèn)題的自動(dòng)解決方案,而應(yīng)開(kāi)發(fā)一個(gè)有效的緩存策略來(lái)處理應(yīng)用程序的對(duì)象。

原文鏈接:http://www.cnblogs.com/liusuqi/p/3157987.html

責(zé)任編輯:陳四芳 來(lái)源: M守護(hù)神
相關(guān)推薦

2020-12-02 09:01:40

Java基礎(chǔ)

2024-05-20 08:58:13

Java引用類(lèi)型垃圾回收器

2021-10-18 15:50:49

Android強(qiáng)引用軟引用

2009-06-19 16:19:23

Java對(duì)象引用

2013-09-16 16:48:50

Android優(yōu)化軟引用

2009-06-16 11:26:22

弱引用內(nèi)存泄露

2020-11-11 08:55:32

SparkJava磁盤(pán)

2021-12-09 15:45:09

Python弱引用代碼

2021-10-08 21:00:52

數(shù)據(jù)弱引用對(duì)象

2015-11-02 17:20:00

Java弱引用

2022-03-08 13:06:25

引用隊(duì)列jvm變量

2021-01-07 14:20:55

JavaGC

2022-01-02 06:55:08

Node.js ObjectWrapAddon

2018-11-16 16:10:28

JavaOOM編程語(yǔ)言

2022-06-30 09:32:46

人工智能AI機(jī)器學(xué)習(xí)

2020-02-09 17:23:17

Python數(shù)據(jù)字典

2009-10-10 09:53:07

.NET值類(lèi)型

2009-07-24 17:43:35

循環(huán)引用ASP.NET AJA

2011-06-13 08:41:56

指針引用

2024-06-28 12:47:29

C#弱引用底層
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)

主站蜘蛛池模板: 久久久久久综合 | 午夜小视频在线播放 | 久久精品国产亚洲一区二区三区 | 久久午夜精品 | 韩日在线 | 北条麻妃国产九九九精品小说 | 精品成人佐山爱一区二区 | caoporon| 91av视频在线免费观看 | 亚洲 欧美 另类 综合 偷拍 | 天天综合网91 | 一区二区三区四区在线视频 | 亚洲精品1 | 国产一区二区三区久久久久久久久 | 国产区久久 | 亚洲 一区 | 亚洲在线免费观看 | 精品国产一区二区在线 | 在线播放中文字幕 | 久久久高清 | 亚洲一区二区三区在线 | 九九精品热 | 亚洲免费一区 | 亚洲一区 | 美女福利网站 | 99久久婷婷国产综合精品 | 日韩一区二区三区视频 | 特黄毛片| 午夜精品一区二区三区在线 | 天天夜夜人人 | 欧美福利视频 | 亚洲国产精品视频一区 | 婷婷精品 | 精品国产乱码久久久久久牛牛 | 手机看片在线播放 | 国产一区二区在线播放 | 一级片视频免费 | japanhd成人| 亚洲精品久久区二区三区蜜桃臀 | 久久久精品 | 欧美精品一区二区三区在线播放 |