perl拼接字符串的性能优化

来源:互联网 发布:腾讯游戏优化 编辑:程序博客网 时间:2024/05/22 08:08


在perl中大量的数据 字符串拼接时发现拼接的速度很慢 5000条记录的拼接时间 达到了 300多秒 甚至1000多秒 

用的拼接方式如下:

$data_str=$data_str.@col_data[$nnn]."']]";


改为下面这种方式之后性能有了很大的提升 同样的5000条记录 只用了几秒钟

$data_str.=@col_data[$nnn]."']]";



我们观察到  第一种方式 会多创建一次 $data+str的空间,当$data+str不断变长时 速度就会越来越慢 


而第二种方式 是直接拼在  $data+str的空间的后面。


PS:

同时  在使用字符串时  能用‘’括起来的静态字符串尽量用‘’ 而不是每个字符串都用""双引号,因为双引号会强制进行转换的检查,会浪费性能。


perl的优化还有几个角度:

有兴趣的可以看看 这篇文章:

http://www.ibm.com/developerworks/cn/linux/l-optperl.html