Perl 让你干想干的事,包括很慢或内存消耗这样的事。此处将告诉你如何避免。
代替读取文件的所有行并使用 处理数组,使用 while
一次仅读取一行。
这两个循环的功能相同:
在这种情况下使用 while
是一种好实践。
避免不必要的引起和字串化
除非绝对必要,不要引起大字符串:
这将创建两个 $large_string
的拷贝(一个是 $copy
,而另一个是引起)。然而:
对于字串化大的数组也是一样:
local $, = "\n";
}
这比下面的代码更内存高效:
或:
local $" = "\n";
print "@big_array";