麻豆黑色丝袜jk制服福利网站-麻豆精品传媒视频观看-麻豆精品传媒一二三区在线视频-麻豆精选传媒4区2021-在线视频99-在线视频a

千鋒教育-做有情懷、有良心、有品質的職業教育機構

手機站
千鋒教育

千鋒學習站 | 隨時隨地免費學

千鋒教育

掃一掃進入千鋒手機站

領取全套視頻
千鋒教育

關注千鋒學習站小程序
隨時隨地免費學習課程

當前位置:首頁  >  技術干貨  > 聊一聊垃圾回收機制

聊一聊垃圾回收機制

來源:千鋒教育
發布人:wjy
時間: 2022-08-11 11:11:22 1660187482

  引出我們的主角

  我們先來回憶一下,全局變量,系統會在頁面關閉時進行釋放占用的內存,函數局部變量,會在函數執行完畢時進行釋放內存,這就是今天我們的主角:Js的垃圾回收機制。

  所有的語言,都需要處理這個過程,比如C語言,需要開發者進行手動,申請與釋放內存

  而 Javascript 自動幫我們做了內存管理,完成了整個內存管理生命周期,讓開發者專注于業務邏輯本身

  但同時也給開發者造成了——可以不關心內存管理的假象。

  總結一下這個過程:

  · 分配你所需要的內存

  · 使用分配到的內存(讀、寫)

  · 不需要時將其釋放\歸還

  下面說一下垃圾回收兩個重要的點:

  · 內存泄漏

  當一些不再被需要的內存,由于某種原因,無法被釋放。就會造成內存泄漏,導致程序內存被占用,直至崩潰。

  · 可達性

  垃圾回收的標準就是對象是否可達,變量是否能被引用

  引用

  對象{ name: xxx }的內存地址,被a,b兩個變量引用兩次,當a被賦值為null,因為b還在引用,可達,所以沒有被回收

垃圾回收機制1

  當test1()被執行,系統為obj分配內存,當函數執行完畢,內存被回收。

  當test2()被執行obj也開辟了內存,但obj被返回結果 賦值給了b,成為了全局變量,不會被銷毀

垃圾回收機制2

  介紹一下垃圾回收實現的兩種常用的方法:

  1、引用清除(IE9之前采用)

  變量聲明以后被引用的次數,為 0 時,該變量內存被銷毀

垃圾回收機制3

  優點

  · 即刻回收垃圾,當被引用數值為0時,就會立刻被回收

  · 不用去遍歷堆里面的所有活動對象和非活動對象

  缺點

  · 計數器需要占很大的位置,因為不能預估被引用的上限

  · 最大的劣勢是無法解決循環引用無法回收的問題

垃圾回收機制4

  上面a,b互相引用,計數不會等于0,內存不會回收,重復調用,會占用大量內存

  2、V8引擎里面 (現在基本采用,標記清除)

  是瀏覽器中Javascript解析引擎V8采用,標記階段:把所有活動對象做上標記,把沒有標記(也就是非活動對象)銷毀,

  從全局作用域的變量,沿作用域逐層往里深度遍歷,當發現被引用,打上標記,執行完畢,將沒有被標記的變量內存,進行銷毀

垃圾回收機制5

  說一說常見的內存泄漏

  Foo 被調用時, this 指向全局變量(window),相當于與是全局變量,變量不會被回收

垃圾回收機制6

  當節點被干掉,定時器還是會不停執行

垃圾回收機制7

  閉包

  計數器

  既實現遞增,又不污染全局環境, 子函數引用父函數變量num,父函數執行完畢num不會被回收, 當子函數執行完畢返回賦值最外層全局環境變量add,記錄狀態, 這其實也是內存泄露案例

垃圾回收機制8

  關閉內存管理

  · 一般棧存放(基本類型的值)不會泄漏,堆存放(引用類型的值是對象)才會造成泄漏

  · 一般小內存泄露不會對程序造成影響,但是大型項目,防止積少成多,養成良好編程習慣

  更多關于html5培訓的問題,歡迎咨詢千鋒教育在線名師,如果想要了解我們的師資、課程、項目實操的話可以點擊咨詢課程顧問,獲取試聽資格來試聽我們的課程,在線零距離接觸千鋒教育大咖名師,讓你輕松從入門到精通。

tags:
聲明:本站稿件版權均屬千鋒教育所有,未經許可不得擅自轉載。
10年以上業內強師集結,手把手帶你蛻變精英
請您保持通訊暢通,專屬學習老師24小時內將與您1V1溝通
免費領取
今日已有369人領取成功
劉同學 138****2860 剛剛成功領取
王同學 131****2015 剛剛成功領取
張同學 133****4652 剛剛成功領取
李同學 135****8607 剛剛成功領取
楊同學 132****5667 剛剛成功領取
岳同學 134****6652 剛剛成功領取
梁同學 157****2950 剛剛成功領取
劉同學 189****1015 剛剛成功領取
張同學 155****4678 剛剛成功領取
鄒同學 139****2907 剛剛成功領取
董同學 138****2867 剛剛成功領取
周同學 136****3602 剛剛成功領取
相關推薦HOT
開班信息
北京校區
  • 北京校區
  • 大連校區
  • 廣州校區
  • 成都校區
  • 杭州校區
  • 長沙校區
  • 合肥校區
  • 南京校區
  • 上海校區
  • 深圳校區
  • 武漢校區
  • 鄭州校區
  • 西安校區
  • 青島校區
  • 重慶校區
  • 太原校區
  • 沈陽校區
  • 南昌校區
  • 哈爾濱校區
主站蜘蛛池模板: 国产精品欧美一区二区三区不卡 | 亚洲欧美成人一区二区在线电影 | 波多野结衣gvg708| 中文字幕黑人借宿神宫寺| 国产三区视频| 精品国产综合区久久久久久| 全彩里番acg里番| 午夜视频在线观看国产| 精品国产柚木在线观看| 亚洲欧美日韩综合在线播放| 日本肉动漫无遮挡无删减在线观看| 男女之间差差差| 日本tvvivodes人妖| 1a级毛片免费观看| 欧美八十老太另类| 老马的春天顾晓婷5| avtt在线播放| 国产高h| 国产国语对白露脸在线观看| 饭冈加奈子黑人解禁在线播放| 欧美三级电影免费| 国产一级在线| 四虎永久在线精品国产免费| 性做久久久久久久久| 国产男女猛烈无遮挡免费视频| 亲密爱人完整版在线观看韩剧 | 欧美三级电影免费| 免费网站看v片在线a| 男女做污污| 蜜柚视频网在线观看免费版| 日本肥熟| 欧美亚洲一二三区| 久久精品无码一区二区三区| 波多野吉衣视频| 污污动漫在线观看| igao视频在线| 边吃奶边插下面| jizz日本在线观看| 小向美奈子中出播放| 国内精品久久久久影院蜜芽| 一级伦理电线在2019|