麻豆黑色丝袜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
開班信息
北京校區
  • 北京校區
  • 大連校區
  • 廣州校區
  • 成都校區
  • 杭州校區
  • 長沙校區
  • 合肥校區
  • 南京校區
  • 上海校區
  • 深圳校區
  • 武漢校區
  • 鄭州校區
  • 西安校區
  • 青島校區
  • 重慶校區
  • 太原校區
  • 沈陽校區
  • 南昌校區
  • 哈爾濱校區
主站蜘蛛池模板: 大香线一本| 本子库全彩无遮挡无翼乌触手| 亚洲欧美日韩综合久久久久| 红颜免费观看动漫完整版| 强行扒开双腿猛烈进入| 欧美www视频| 韩国理伦大片三女教师| 坛蜜甜蜜皮鞭| 蜜桃成熟之蜜桃仙子| 玩乡下小处雏女免费视频| 黄色a级| 美女让男人桶出水的网站| 老婆~我等不及了给我| 92福利在线| 国产成人精品无缓存在线播放| 精品伊人久久| 中文无码久久精品| а√在线地址最新版| 99久久久精品免费观看国产| chinese真实露脸hotmilf| 欧美日韩三级在线观看| 欧美乱大交| swag合集120部| 天天躁夜夜躁很很躁| 亚洲午夜一区二区三区| 成年女人在线视频| 久久精品麻豆日日躁夜夜躁| 妖精的尾巴国语版全集在线观看| 干吊妞| 欧美影视一区| 美女把尿口扒开让男人桶到出水| 欧美aa在线| 亚洲欧美日韩在线观看播放| 美女裸体a级毛片| 波多野结衣作品在线观看| 大象传媒在线观看| 日本色视| 欧美成人精品第一区二区三区| 中文字幕2020| 久久中文字幕一区二区| 黄色三级免费电影|