zoukankan      html  css  js  c++  java
  • 内存溢出与内存泄漏

     1 <!DOCTYPE html>
     2 <html lang="en">
     3 <head>
     4   <meta charset="UTF-8">
     5   <title>02_内存溢出与内存泄露</title>
     6 </head>
     7 <body>
     8 
     9 <!--
    10 1. 内存溢出
    11   * 一种程序运行出现的错误
    12   * 当程序运行需要的内存超过了剩余的内存时, 就出抛出内存溢出的错误
    13 2. 内存泄露
    14   * 占用的内存没有及时释放
    15   * 内存泄露积累多了就容易导致内存溢出
    16   * 常见的内存泄露:
    17     * 意外的全局变量
    18     * 没有及时清理的计时器或回调函数
    19     * 闭包
    20 -->
    21 
    22 <script type="text/javascript">
    23   // 1. 内存溢出
    24   var obj = {}
    25   for (var i = 0; i < 10000; i++) {
    26     obj[i] = new Array(10000000)
    27     console.log('-----')
    28   }
    29 
    30   // 2. 内存泄露
    31     // 意外的全局变量
    32   function fn() {
    33     a = new Array(10000000)
    34     console.log(a)
    35   }
    36   fn()
    37 
    38    // 没有及时清理的计时器或回调函数
    39   var intervalId = setInterval(function () { //启动循环定时器后不清理
    40     console.log('----')
    41   }, 1000)
    42 
    43   // clearInterval(intervalId)
    44 
    45     // 闭包
    46   function fn1() {
    47     var a = 4
    48     function fn2() {
    49       console.log(++a)
    50     }
    51     return fn2
    52   }
    53   var f = fn1()
    54   f()
    55 
    56   // f = null
    57 
    58 </script>
    59 </body>
    60 </html>
  • 相关阅读:
    ButterKnife 原理解析
    有关java之反射的使用
    Integer 与 int 中的 ==
    下拉框、多选框、单选框 通过TagHelper绑定数据
    动态构建视图表单
    添加我的应用中的后台图标
    标准服务接口示例代码
    .net Core下的 常用方法
    使用Redirect跳转
    标准表单提交示例代码
  • 原文地址:https://www.cnblogs.com/fsg6/p/12791917.html
Copyright © 2011-2022 走看看