zoukankan      html  css  js  c++  java
  • perl 释放内存问题【转】

    最近一直在纠结perl里如何释放内存的问题。下面有几个简单的语句:

          1、 perl -e 'for $i(1..10000){$hash{$i} = 0;print "$i\t$hash{$i}\n";delete $hash{$i};}for $j(10001..20000){$hash{$j}=1;print "$j\t$hash{$j}\n"}'
          2、 perl -e 'for $i(1..10000){$hash{$i} = 0;print "$i\t$hash{$i}\n";undef $hash{$i};}for $j(10001..20000){$hash{$j}=1;print "$j\t$hash{$j}\n"}'
          3、 perl -e 'for $i(1..10000){$a[$i]=0;print "$i\t$a[$i]";delete $a[$i];}for $j(10001..20000){$a[$j]=1;print "$j\t$a[$j]\n";}'
          4、 perl -e 'for $i(1..10000){$a[$i]=0;print "$i\t$a[$i]";undef $a[$i];}for $j(10001..20000){$a[$j]=1;print "$j\t$a[$j]\n";}'

          将哈希和数组里面的元素删除或初始化后,其占用的内存并不会释放。

          然后,使用了 Data::Dumper :

          use Data::Dumper;
          %disney = ('cat'=>'Tom', 'mouse' => 'Jerry', dog=>'goofie');
          delete $disney{'cat'};
          $disney{'dog'} = '';
           print Dumper(\%disney);

          这样可以处理将全部数据读取后,释放内存
  • 相关阅读:
    Springmvc ajax请求400
    JSR-303 结合spring 校验
    引入外部字体文件进行设置
    AlertDialog
    通过setContentView设置activity的不同样式
    取得手机屏幕像素
    在代码中引用资源
    解决json_encode中文乱码
    解决MySQL中文乱码
    android studio导入PullToRefresh
  • 原文地址:https://www.cnblogs.com/xianghang123/p/2442401.html
Copyright © 2011-2022 走看看